6 检查栈

6.1 堆栈帧

每当一个函数被调用了,就会产生一个新的堆栈帧。

GDB为所有现存的堆栈帧编号,从最内层帧0开始,调用此函数的帧1...

info frame

frame args 

切换到args对应的堆栈帧上,args帧地址或帧号

6.2 回溯

bt | where | info stack

显示多个或所有线程的回溯:

thread apply all backtrace

show backtrace limit

显示当前回溯层限制

set backtrace limit 0

不限制

set backtrace limit n

6.3 选择堆栈帧

frame n | f n

frame addr | f addr

选择在addr上的帧,在堆栈帧被损坏的时候有用

addr怎么确定?info frame

6.4 堆栈帧信息

info frame

帧地址

上一个帧的地址

下一个帧的地址

入参

程序计数器

...

info args

打印选定帧的参数

info locals

打印选定帧的局部变量

猜你喜欢

转载自blog.csdn.net/u012906122/article/details/113926700