gdb调试的使用
gdb基础使用:
如果需要使用gdb,在gcc的时候需要-g选项,不加无法调试。help 查看命令帮助
list 看代码
list 行号
l
list 函数名
run 运行
start 进行单步调试
step 跳进函数里 逐语句
next 下一步 逐过程
finish 结束一个函数,返回函数调用的位置
print 变量 打印变量
quit 退出
backtrace 查看函数调用信息 bt
直接敲回车 是重复上一条命令
info locals 查看局部变量信息
break 设置断点 b
info breakpoints 查看设置的断点
delete 删除断点
delete breakpoints NUM(断点数)
conutine 直接运行到下一个断点的位置
display 每次都看这个变量信息 监视
查看内存命令 x

x /4x 地址 /4表示显示几个 x十六进制
o(octal),x(hex),d(decimal),u(unsigned decimal),t(binary),f(float),a(address),i(instruction),c(char)s(string).

b(byte),一个字节h(halfword),两个字节 形式读取值w(word),四个字节g(giant, 8 bytes).八个字节
段错误:
r 就是 run 直接到段错误
死后验尸:
ulimit -a 查看core文件大小
设置大小并开启
ulimit -c 1024
然后死了就生成core文件
gdb a.out core

浙公网安备 33010602011771号