Подскажите, как в Visual studio можно отключить режим обязательной проверки объявления переменных до кода.
Это часть стандарта? Для чего это ограничение вввели?
Столкнулся когда начал писать драйверы в VS — файл *.c, — может, проблема из-за этого?Неужели компилятор C сам не умеет "расставлять" переменные по тем адресам, где нужно?
Заранее спасибо, надоело уже мучаться
Здравствуйте, Аноним, Вы писали:
А>Подскажите, как в Visual studio можно отключить режим обязательной проверки объявления переменных до кода.
А>Это часть стандарта? Для чего это ограничение вввели?
А>Столкнулся когда начал писать драйверы в VS — файл *.c, — может, проблема из-за этого?Неужели компилятор C сам не умеет "расставлять" переменные по тем адресам, где нужно?
А>Заранее спасибо, надоело уже мучаться
Это ограничение языка C. Оно устранено в новой версии стандарта C — в C99, также его нет в C++.
Visual Studio не поддерживает C99.
Прийдется либо объявлять в начале блока, либо писать на C++.
Здравствуйте, Аноним, Вы писали:
А>Подскажите, как в Visual studio можно отключить режим обязательной проверки объявления переменных до кода.
А>Это часть стандарта? Для чего это ограничение вввели?
А>Столкнулся когда начал писать драйверы в VS — файл *.c, — может, проблема из-за этого?Неужели компилятор C сам не умеет "расставлять" переменные по тем адресам, где нужно?
А>Заранее спасибо, надоело уже мучаться
С99 код в студии рекомендуется компилировать как С++. С++ более совместим с С99, чем студийный С
Просто вручную установи Project Properties -> C/C++ -> Advanced -> Compile As = Compile as C++ Code. Или добавь ключ /TP