应用程序在编译出错后执行时关闭,但在调试时运行良好

App closes while executing after compiling with errors, but while debugging it works fine!

本文关键字:调试 运行 出错 编译 执行 应用程序      更新时间:2023-10-16

好吧。这就是问题所在。仅此而已。

我得到了一个用SDL和OpenGL制作的应用程序。SDL在图形窗口之外打开了一个额外的窗口(即控制台)。当我执行时,我得到一个3输出错误,控制台告诉我。然后它就关闭了(图形化的)。

但我知道,当收到SIGSEGV信号(不知道如何捕获它),并且在调试时它出现在我的IDE中(代码::块)时,就会发生这种情况。但这一次什么都没有出现,一切都很好。但执行时会崩溃。。

什么。。。

我预计会出现什么样的错误?。有时它会关闭,有时它不会。如何知道我遇到了什么样的问题?。

SIGSEGV是一个分段错误,您试图访问进程无法访问的内存。

假设您在UNIXy系统上,您应该能够将程序放入核心转储,然后在调试器中查看核心转储;或者,使用像Valgrind这样的内存调试器来确定导致此问题的内存管理问题。