Я бы сказал, что ваш код может выводить что угодно или просто что угодно может произойти, потому что ваш код вызывает неопределенное поведение в соответствии с C99.
У вас нет прототипа для printf
в области видимости.
J.2 Неопределенное поведение
- Для вызова функции без прототипа функции в области, где функция определена с прототипом функции, либо прототип заканчивается многоточием, либо типы аргументов после продвижения не совместимы с типами параметров ( 6.5.2.2).
Если вопрос касается инициализации глобальных переменных, то a
будет инициализирован до 0
, поскольку он имеет статическую продолжительность хранения.