GDB进阶命令
来源:互联网 发布:php邮件系统 编辑:程序博客网 时间:2024/06/14 10:50
GDB详细命令列表可参考:http://www.zeuux.org/science/learning-gdb.cn.html
1,
where : 输出堆栈中跟踪的函数调用记录.
bt : backtrace,同上.
backtrace full
bt full
bt full n
bt full -n
也打印本地变量。n是要打印的帧的数量,如上所述。
2,
frame <number>: 检查某一特定帖(一帖为一个函数调用).
frame n
n是一个从0开始的整数,是栈中的层编号。比如:frame 0,表示栈顶,frame 1,表示栈的第二层。
up
表示向栈的上面移动n层,可以不打n,表示向上移动一层。
down
表示向栈的下面移动n层,可以不打n,表示向下移动一层。
info frame 打印出更为详细的当前栈层的信息,只不过,大多数都是运行时的内内地址
info args
打印出当前函数的参数名及其值。
info locals
打印出当前函数中所有局部变量及其值。
info catch
打印出当前的函数中的异常处理信息。
3,
finish : 当用step命令进入函数内部后,用finish命令来执行程序直到从当前函数返回.
4,
用枚举代替宏定义: 便于调试时检查变量值的含义.
5,
watch <…>: 设置观察点.
6,
gdb不能单步调试if,while语句的多个条件函数.所以必要时要重写代码.
也可在被调函数内设置断点来检查其值,但只能查看而不能记录其值.
7,
调试工具: valgrind等.
8,
<<debugging>> , David J.Agans.
info break 查看断点
print x=1 修改变量x的值
set args 。。。 指定参数:
show args
display设置自动显示的变量
delete删除断点
frame或f 查看当前栈层的信息
info frame或info f 这个命令会打印出更为详细的当前栈层的信息,只不过,大多数都是运行时的内存地址。比如函数的地址,调用函数的地址,被调用函数的地址,目前的函数是由什么样的程序语言写成的、函数参数地址及值,局部变量的地址等等
path 《dir》: 设定程序运行路径
show 《dir》:查看路径
set environment varname[=value]:设置环境变量。如set env USER=hchen
show environment[varname]: 查看环境变量
info terminal: 显示程序用到的终端的模式
run>outfile: 重定向输出
tty /dev/ttyb:指定输入输出的终端设备
- GDB进阶命令
- GDB调试进阶
- GDB命令
- gdb命令
- GDB命令
- gdb命令
- GDB 命令
- GDB 命令
- GDB命令
- gdb命令
- gdb命令
- gdb命令
- GDB 命令
- GDB命令
- gdb命令
- gdb命令
- GDB 命令
- gdb命令
- 一封写给自己的信
- PJSIP + PYQT +VLC = SIP PHONE/IM ?
- 使用Debugging Tools for Windows分析蓝屏信息
- tomcat数据源配置文件缓存问题及解决
- 创意经典(转帖)
- GDB进阶命令
- 如何利用嗅探器TcpDump分析网络安全
- Python扩展方法及工具比较
- Socket+AMF3粘包问题
- 用C/C++扩展Python语言
- 明天就要报考了....
- 线性表-归并算法
- 移植 mplayer 到 mini2440 全流程的小窍门
- Hot Expo