Я не могу найти четкого ответа на то, какой компилятор Microchip XC16 v1.5 стандарта C использует по умолчанию (xc16-gcc -> options = empty).
Мы явно получим другой результат, если укажем его на -std=C99
, но откуда?!?
Я не могу найти четкого ответа на то, какой компилятор Microchip XC16 v1.5 стандарта C использует по умолчанию (xc16-gcc -> options = empty).
Мы явно получим другой результат, если укажем его на -std=C99
, но откуда?!?
Компилятор xc16 использует стандарт C89. Посмотрите главу 7 в вручную.
Этот компилятор соответствует стандарту ANSI X3.159-1989 для языков программирования. Это обычно называют стандартом C89. В данном руководстве он упоминается как стандарт ANSI C. Также поддерживаются некоторые функции более позднего стандарта C99.
Выбрав компилятор XC8 2.0 и выше, вы можете включить стандарт C99.