捕获打印精美的字符串输出,以便在gdb的一行中显示多个变量



在我的gdb会话中,我输入了这个:

(gdb) p arg1
$17 = (svn_revnum_t *) 0xbfffea0c
(gdb) p *(arg1)
$18 = -1

现在,我希望将这两个命令的"打印精美"输出显示在一行中,如下所示:

$19 = (svn_revnum_t *) 0xbfffea0c ; -1

…所以我尝试这样做:

(gdb) p arg1, ";", *(arg1)
$19 = -1

…但很明显,这行不通。

有办法这样做吗?

我猜,如果有可能以某种方式"捕获"print作为字符串的漂亮打印输出,那么我可以使用printf "%s ; %s"来格式化我的输出;但是如何捕获print输出呢?

我认为最简单的方法是编写一个新的Python命令来做你想做的事情。

或者,您可以编写一个Python便利函数,在其参数上使用str。然后,使用printf

最新更新