我使用 MinGW 作为编译器,使用 CodeBlocks 作为 IDE。当出现运行时错误时,程序会直接停止工作而不会出现任何错误消息。是否可以获取常规错误消息,例如错误类型和发生位置?
最佳答案
我知道这不是真正的“答案”,但我还是新手,所以我还不能对这些问题发表评论。无论如何,就像 Mats 所说的那样,试试 GDB。这里是下载页面http://www.gnu.org/software/gdb/
有很多使用调试器的教程。这个还算不错。 http://www.cs.cmu.edu/~gilpin/tutorial/
如果您从未使用过调试器,它基本上会逐行运行您的代码。您可以控制要进行多远以及希望代码在何处停止以检查错误。调试器还跟踪其他重要信息,如变量值、变量地址、循环计数等。
如果您不想使用调试器,您始终可以在您可能怀疑程序崩溃的地方使用打印语句。例如,如果你有一个函数 foo(),你可以在该函数的第一行放置一个 print 语句,比如“in function foo”。但是,如果您有大量代码,这种方法可能会变得非常乏味。您还必须记得在完成后删除打印语句。
关于c++ - 如何调试 C++ 运行时错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16989137/