gdb note

* 常见命令*

 1. 启动gdb:
  gdb program 
 OR
 gdb
 file program

2. run   // 重新开始程序

3.设置断点 
break program.c:6
break func1  //在该函数入口设置断点
break program.c:6 if i >= ARRAYSIZE  //条件断点

4.continue

5.step //执行一条语句,函数调用视为整体
                                                                                                                                        6.next //执行一条语句,函数调用进入内部
                                                                                                                                               7.ENTER //gdb 重复之前的指令

8.print my_var
print /x my_var  //十六进制
lg:struct entry {
int key;
char *name;
float price;
long serial_number;
};
struct entry * e1 = <something>;   //断点位置
print e1 //输出内存地址
print e1->key
OR
print (*e1).key

9.watch my_var //当变量只发生改变停止程序,输出值

10.backtrace //打印栈信息

11.where //与backtrace类似,

12.clear //取消断点

13.info //显示各种信息 lg:inof lo显示所有局部变量 ;info b显示所有断点

14.finish //运行至当前函数完成
                                                                                                                                                           15.delete //删除特定的断点
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值