linux - 当程序在没有调试器和有调试器的情况下运行时,执行行为是不同的

标签 linux ddd-debugger

我正在Linux中运行一个程序。当我在 ddd 调试器中运行程序和没有它时,程序的行为是不同的。那就是程序在不同的点停止。为什么会这样呢?它是依赖于调试器还是每个调试器有时都会发生?

最佳答案

您的问题描述不是很准确,但听起来像是内存访问问题。

当代码中存在无效内存访问时,行为是未定义的,并且可能与连接的 gdb 不同。对于内存错误,您应该尝试运行像 Valgrind 这样的内存分析器。

关于linux - 当程序在没有调试器和有调试器的情况下运行时,执行行为是不同的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12091053/

相关文章:

linux - 当我给它 `-- ` 作为参数时会出现奇怪的行为

php - 如何在 ubuntu 中运行这个 bash 脚本?

c++ - 没有源代码的gdb中的方法定义

tk - 如何将 DDD 和 Insight 中的 Motif 主题更改为更愉快的内容?

assembly - 在 DDD 中解释 eFlags

debugging - GDB:如何列出用于编译的所有源文件

linux - 如何在通过 AWS CodeDeploy 从 Git (Bitbucket) 部署后保留符号链接(symbolic link)

linux - 将内核空间中的全局变量指针映射到用户空间?

Linux wget 文件输出

windows-xp - 要让 DDD 在 XP 上正常运行,最低限度的 Cygwin 安装是什么?