Господа, а что, в новой вижуал студии запретили объявлять локальные переменные не в начале функции? Сыпятся страшные ошибки. Или такого нет в Pro версии? В общем сабж.
Если компилировать с ключом /TC (Compile as C code) то используется стандарт ANSI C, в котором нельзя так делать. По умолчанию стоит ключ /TP (Compile as C++ code), где допустимо объявление переменных после первой присваивающей инструкции. Вроде так.
локальные можно объявлять нетолько в начале функции но и в начале каждого блока. Код (Text): int main() { int a; a = 2; { int b; b = a; } }
С99 - единственный и последний официальный стандарт языка Си. Он был принят ISO как "ISO/IEC 9899:1999", а позже принят в ANSI как "ANSI C".