【发布时间】:2020-10-19 01:12:10
【问题描述】:
使用gdb调试时,有时显示的运行位置很奇怪。当我使用n 执行下一行时,我要关注的指令已经执行完毕。下面是一个例子。显示执行位置的光标当前未放置在任何命令上
当我使用n命令时,结果如下图所示。
可以看到光标没有停留在第 911 行。有时会跳过几行。
而且光标经常停留在评论上。
【问题讨论】:
使用gdb调试时,有时显示的运行位置很奇怪。当我使用n 执行下一行时,我要关注的指令已经执行完毕。下面是一个例子。显示执行位置的光标当前未放置在任何命令上
当我使用n命令时,结果如下图所示。
可以看到光标没有停留在第 911 行。有时会跳过几行。
而且光标经常停留在评论上。
【问题讨论】:
用gdb调试时,有时显示的运行位置很奇怪。
这通常出于一两个原因:
【讨论】:
当您在 GDB tui 模式下使用 n 时,源代码窗口可能会损坏。当程序将某些内容打印到标准输出时,可能会发生这种情况,从而破坏了 tui 窗口的布局。看起来这就是 DPRINTF() 电话中的 911 行中发生的事情。要修复布局,您可以按 Ctrl+L 并刷新 tui 窗口。
【讨论】: