Абсурдные значения для main (int argc, char ** argv) - PullRequest
3 голосов
/ 30 ноября 2011

У меня в старом проекте C ++ было запущено консольное приложение.
С точкой останова в main(int argc, char** argv) запущено program.exe -debug.
Согласно отладчику argc стало 32, а строки в argv имел странные случайные значения.
При продолжении выполнения нарушение доступа произошло, поскольку строки в argv указывали на недопустимые значения.

Что может быть причиной этого?

1 Ответ

5 голосов
/ 30 ноября 2011

Компоновщик неверно Точка входа установлена.
Для обычного консольного приложения это должно быть mainCRTStartup (отладчик показывает __tmainCRTStartup).

Наличие неверной записиТочка заставила main взглянуть на то, что «произошло» в стеке.
Публикация этого сообщения, поскольку найти его было нетривиально.

...