gdb 如何查看堆栈信息和寄存器信息?
在使用GDB调试程序时,可以通过以下命令查看堆栈信息和寄存器信息:
查看堆栈信息 bt:查看当前函数调用栈,即当前函数调用的上一层函数以及它们的调用栈信息。 up/down n:在堆栈中向上/向下移动n层。
frame n:切换到第n层堆栈。 info frame:查看当前堆栈帧的信息,包括函数名、参数、返回地址等。 info
args:查看当前函数的参数信息。 info locals:查看当前函数的局部变量信息。 查看寄存器信息 info
registers:查看所有寄存器的值。 info registers reg:查看指定寄存器reg的值,如info registers
rax。 print /x $reg:以16进制格式查看指定寄存器reg的值,如print /x $rax。 set $reg =
value:设置指定寄存器reg的值为value,如set $rax = 0x1234。
以上是常用的GDB命令,可以通过这些命令查看堆栈信息和寄存器信息,方便调试程序。