让 GDB 在回溯上扩展 arg=...

Ere*_*rez 3 c c++ debugging gdb

当我输入 gdb backtrace 时,我得到:

(gdb) bt 1
#0  Handler::send (this=0x2ba2b10, src=..., to=..., newMessage=true) at main.cpp:138
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,gdb 显示src=...to=...并且不显示实际值。

如何强制 gdb 扩展堆栈跟踪而不显式打印变量?

ks1*_*322 5

默认情况下,gdb 仅在回溯中打印标量值。print frame-arguments要打印设置为的所有值(数组、结构、联合)all

set print frame-arguments all 
Run Code Online (Sandbox Code Playgroud)

请参阅文档