如何让LLDB打印当前行

时间:2014-10-29 08:49:42

标签: c++ c debugging gdb lldb

运行GDB时,调试器会打印它所在的当前行,以便指示它当前所处的位置。

看到我对小牛队的看法,GDB似乎不是一个选择,因此我被迫使用LLDB。我的问题是:我如何从LLDB获得类似的行为?

目前所做的只是打印7行左右的代码行,箭头指向当前行,而不是仅仅打印它所在的行,这看起来很混乱。 LLDB似乎也忽略了printf

产生的所有输出

有没有办法使用LLDB获得相同或类似的结果?

1 个答案:

答案 0 :(得分:2)

我不认为你问的问题正是你想要的。我假设您的意思是“如何让LLDB仅打印当前行”,因为正如您所指出的那样,它总是打印当前行以及一些上下文行。

无论如何,停止时打印的源行数由两个设置控制:

  stop-line-count-after    -- The number of sources lines to display that come after the current source line when displaying a stopped context.
  stop-line-count-before   -- The number of sources lines to display that come before the current source line when displaying a stopped context.

实际上这些并不完全正确,因为将两者都设置为0表示没有源线,但将“after”设置为1则显示两条停止线。有人显然希望能够显示没有源代码行,但不想添加额外的设置。

无论如何,你不能只获得一行,但你可以把它归结为两行。