Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/windows/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows 将值设置为main(int argc,char**argv) 我在旧C++项目上启动控制台应用程序。 在main(int argc,char**argv)中使用断点启动program.exe-debug 根据调试器,argc变为32,argv中的字符串具有奇怪的随机值。 执行继续时发生访问冲突,因为argv中的字符串指向无效值_Windows_Msvcrt - Fatal编程技术网

Windows 将值设置为main(int argc,char**argv) 我在旧C++项目上启动控制台应用程序。 在main(int argc,char**argv)中使用断点启动program.exe-debug 根据调试器,argc变为32,argv中的字符串具有奇怪的随机值。 执行继续时发生访问冲突,因为argv中的字符串指向无效值

Windows 将值设置为main(int argc,char**argv) 我在旧C++项目上启动控制台应用程序。 在main(int argc,char**argv)中使用断点启动program.exe-debug 根据调试器,argc变为32,argv中的字符串具有奇怪的随机值。 执行继续时发生访问冲突,因为argv中的字符串指向无效值,windows,msvcrt,Windows,Msvcrt,什么原因会导致这种情况?链接器设置了错误的入口点。 对于普通控制台应用程序,这应该是mainCRTStartup(调试器显示\uu\tmainCRTStartup) 具有无效的入口点导致main查看堆栈中发生了什么。 发布这篇文章,因为它不是一件小事。您是否将main中的argc值打印到stdout以查看它是否也报告了32?感谢您跟踪并发布这一神秘的知识。我对此表示怀疑。如果链接器没有找到\uu tmainCRTStartup,它会抱怨,但显然它没有找到,并继续链接项目。我怀疑char**arg

什么原因会导致这种情况?

链接器设置了错误的入口点。
对于普通控制台应用程序,这应该是
mainCRTStartup
(调试器显示
\uu\tmainCRTStartup

具有无效的入口点导致main查看堆栈中发生了什么。

发布这篇文章,因为它不是一件小事。

您是否将main中的
argc
值打印到
stdout
以查看它是否也报告了32?感谢您跟踪并发布这一神秘的知识。我对此表示怀疑。如果链接器没有找到
\uu tmainCRTStartup
,它会抱怨,但显然它没有找到,并继续链接项目。我怀疑
char**argv
是崩溃的原因(不可写缓冲区)。请尝试
char*argv[]