GDB使用汇总

简介

        GDB(GNU Debugger),通常用来调试C/C++程序。包含以下功能:

  • 设置断点
  • 显示、修改变量值
  • 线程切换

        使用GDB调试前,需要在GCC编译时加入-g选项,即GCC在程序中加入“切口”,GDB能够利用这些“切口”与程序进行交互。再使用“gdb 程序名"的方式执行程序。或者在GDB启动后使用file 程序名的方法启动。

常用选项

操作全称示例含义
set argsset args value1 value2 ...设置参数
llistlist 开始行号; list [开始,结束]

列出指定行号开始的代码

rrun运行装载进GDB的可执行文件
nnext显示下一行
ccontinue继续运行被中断的程序
iinfoinfo para列出信息
bt列出调用栈
file加载文件
q退出GDB

断点相关操作

操作全称示例含义
bbreakbreak 行号;break 函数名称;设置断点,程序运行到断点位置处会中断
infoinfo break列出所有断点
delete删除指定编号的断点,未指定则删除所有断点
disabledisable breakpoint 断点编号禁止使用该编号断点
enableenable breakpoint 断点编号允许使用该编号断点
clearclear 代码行号清除断点

变量相关操作

操作全称实例含义
pprintfprintf var打印变量内容
setset args设置发送给程序的参数
showshow args查看默认参数
displaydisplay para

程序中断运行时,显示(作用域内)变量

whatiswhatis 变量名查看变量类型
ptypeptype 变量名查看变量类型及详细信息

单步调试

操作全称实例含义
nextn单步执行
steps进入函数
finish退出已经进入的函数,返回到调用的函数中

Tips:

按Enter键,GDB会默认执行上一条命令。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

路转溪桥忽见

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值