Debug GDB 常用命令


gcc/g++ -g       添加调试信息   

file filename    指定要调试的文件或者 gdb filename

run/r            运行程序
next/n           执行下一句(不跳转)
step/s           执行下一句(跳转)
continue/c       继续

list/l           打印debug处源码
l -              打印debug处上方的源码
l +              打印debug处下方的源码

回车重复上个命令
shell +command   使用shell命令
run>outfile      重定向输出
make和cd         可直接使用

break/b +/-num       在当前行+/-num处设断点
b filename:linenum   在filename文件的linenum行设断点
b filename:funcname  在对应函数起始位置设断点
b *address           address为内存地址
break                在下一行停住
b <参数> if          在条件成立时停住
e.g. break if i==100 当i=100时停住 
     
return              跳过当前函数无视断点
finish              跳过当前函数,但如果函数中有断点在断点处停止
until/u             跳出当前循环,如有断点在断点处停止
backtrace/bt [-n]   显示从栈底到n层内容
bt [n]              显示从栈顶到n层内容

point/p *array@len  显示数组内容,长度为len
p/a                 按16进制显示
p/c                 按字符形式显示
x/3i $pc            显示pc开始的3条指令

注意:(默认情况下Mac系统TUI mode是disable的。可以使用cgdb来替代 brew install cgdb

http://stackoverflow.com/questions/6612133/no-tui-support-for-gdb-on-mac

layout src 仅显示源代码窗口。

layout asm 仅显示汇编代码窗口。

layout split 显示源代码和汇编代码窗口。

layout regs 显示寄存器和源代码窗口,或者寄存器和汇编代码窗口。

layout next` 和 `layout prev' 切换窗口。

Ctrl+ L      刷新屏幕。

Ctrl+x  a   回到传统模式。

 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值