我在旧的C ++项目中启动了Console-application
main(int argc, char** argv)
中的断点已启动program.exe -debug
根据调试器 argc 变为32, argv 中的字符串具有奇怪的随机值。
执行继续访问冲突时,由于 argv 中的字符串指向无效值。
导致这种情况的原因是什么?
答案 0 :(得分:5)
链接器设置错误的入口点
对于普通的控制台应用程序,这应该是mainCRTStartup
(调试器显示__tmainCRTStartup
)。
有一个无效的入口点导致main查看堆栈中的“发生了什么” 发布此信息,因为找到它并非易事。