我正在Linux中运行一个程序。当我在 ddd 调试器中运行程序和没有它时,程序的行为是不同的。那就是程序在不同的点停止。为什么会这样呢?它是依赖于调试器还是每个调试器有时都会发生?
最佳答案
您的问题描述不是很准确,但听起来像是内存访问问题。
当代码中存在无效内存访问时,行为是未定义的,并且可能与连接的 gdb 不同。对于内存错误,您应该尝试运行像 Valgrind 这样的内存分析器。
关于linux - 当程序在没有调试器和有调试器的情况下运行时,执行行为是不同的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12091053/