在gdb中调试一些代码时,我想看看如果我说next
或step
将执行哪一行。
l
,但如果我说l
几次(并且不记得多少次),那么l
不打印被执行。 我想知道我是否在gdb中缺少一个简单的命令,它向我显示调试器停止的当前行?
答案 0 :(得分:2)
您可以使用
list * $ eip
或更短的表格
l * $ eip
这将指示gdb在当前程序计数器附近打印源代码行。
答案 1 :(得分:1)
你可以说l +0
;当前行将是第一个列出的行。
命令l +offset
列出了从当前行的offset
行开始的代码。
请注意,如果您已使用list
命令,则当前行将更改,即它将不再是下一个执行行。所以这只适用于你的第一个list
命令。
答案 2 :(得分:1)
要查看调试器停止的当前行,可以使用不带参数的farme
命令。这实现了与update
命令相同的效果。它适用于tui
和命令行模式。
答案 3 :(得分:0)
听起来你想在GDB
中运行Emacs
(它会显示当前文件并标记当前行),DDD
或tui
模式