目录
4、使用gdb检查崩溃文件----core文件(程序崩溃时内存堆栈)
在使用gdb命令之前,编译可执行文件时需加上 -g -o0选项。(-o0的作用是防止编译优化)
1、使用gdb
gdb 可执行文件名
2、常用命令
list/l [文件名:][行号] | [函数名] | 查看文件内容 |
run/r | 运行程序 |
break/b [文件名:][行号] | [函数名] | 打断点 |
continue/c | 继续运行 |
step/s | 相当于vs的F11,进入函数内部 |
next/n | 相当于vs的F10,执行下一个语句 |
finish | 跳出本次函数调用 |
info break/ib | 查看断点信息 |
delete [num] | 删除断点,不加num是删除所有断点 |
ignore [num] [count] | 忽略num断点count次 |
print/p 表达式 | 监视表达式值一次 |
display 表达式 | 一直监视表达式的值 |
先info display,再undisplay num | 删除监视 |
3、gdb加命令行参数
在gdb中输入:
set args 参数
查看args:
show args
4、使用gdb检查崩溃文件----core文件(程序崩溃时内存堆栈)
编译时加上选项 -g -o0
ulimit -c unlimited
执行可执行程序
gdb 可执行程序文件名 core
bt