Объявления переменных до программного кода
От: Аноним  
Дата: 06.01.10 15:56
Оценка:
Подскажите, как в Visual studio можно отключить режим обязательной проверки объявления переменных до кода.
Это часть стандарта? Для чего это ограничение вввели?
Столкнулся когда начал писать драйверы в VS — файл *.c, — может, проблема из-за этого?Неужели компилятор C сам не умеет "расставлять" переменные по тем адресам, где нужно?
Заранее спасибо, надоело уже мучаться
Re: Объявления переменных до программного кода
От: Alexander G Украина  
Дата: 06.01.10 16:09
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Подскажите, как в Visual studio можно отключить режим обязательной проверки объявления переменных до кода.

А>Это часть стандарта? Для чего это ограничение вввели?
А>Столкнулся когда начал писать драйверы в VS — файл *.c, — может, проблема из-за этого?Неужели компилятор C сам не умеет "расставлять" переменные по тем адресам, где нужно?
А>Заранее спасибо, надоело уже мучаться

Это ограничение языка C. Оно устранено в новой версии стандарта C — в C99, также его нет в C++.
Visual Studio не поддерживает C99.
Прийдется либо объявлять в начале блока, либо писать на C++.
Русский военный корабль идёт ко дну!
Re: Объявления переменных до программного кода
От: remark Россия http://www.1024cores.net/
Дата: 08.01.10 08:19
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Подскажите, как в Visual studio можно отключить режим обязательной проверки объявления переменных до кода.

А>Это часть стандарта? Для чего это ограничение вввели?
А>Столкнулся когда начал писать драйверы в VS — файл *.c, — может, проблема из-за этого?Неужели компилятор C сам не умеет "расставлять" переменные по тем адресам, где нужно?
А>Заранее спасибо, надоело уже мучаться


С99 код в студии рекомендуется компилировать как С++. С++ более совместим с С99, чем студийный С
Просто вручную установи Project Properties -> C/C++ -> Advanced -> Compile As = Compile as C++ Code. Или добавь ключ /TP



1024cores — all about multithreading, multicore, concurrency, parallelism, lock-free algorithms
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.