【发布时间】:2014-04-15 21:28:35
【问题描述】:
我的程序在 GCC 上运行的 Linux 上运行良好,但是当我使用 Visual Studio 2013 在 Windows 上编译和运行代码时,它给了我这个错误:a3a3.exe 中 0x00EC2527 处的未处理异常:0xC00000FD:堆栈溢出(参数:0x00000000 , 0x00692000)。
它还在 crtexe.c 的第 626 行插入断点;以下是第 624 - 626 行供参考:
#else /* WPRFLAG */
__initenv = envp;
mainret = main(argc, argv, envp);
在使用 Visual Studio 2013 之前,我已经编译并运行了 C 程序,但这个程序似乎不想工作,我终生无法确定原因。非常感谢您的帮助,我对编程很陌生,这是我在 stackoverflow 上的第一篇文章。我也很感激任何额外的提示或批评来帮助我学习。谢谢。
这是我的程序:http://pastebin.com/X731mU7W
【问题讨论】:
-
欢迎来到 Stack Overflow。如果您可以尝试将代码减少到相关部分,然后将这些包含在您的问题中,那就太好了。应避免仅链接到代码。在修剪代码时,您甚至可能会发现问题的原因! :)
-
@lethal-guitar 感谢您的指点。我只包含了整个代码,因为我不知道代码的哪个区域受到了影响。
-
我承认,当您的程序在
main之前崩溃时,很难缩小代码范围。这通常强烈表明您正试图将一些巨大的东西压入 main 堆栈,或者您正试图分配一些太大的全局数据。
标签: c visual-studio