[linux]GDB学习

1.程序的编译与运行

gcc -g -o test test.c        -g生成调试信息
gdb test                     进入GDB
quit  退出gdb

2.显示代码

list               一次只显示10行,直接回车即可显示后10行,一直到全部显示即可
list 2,4           显示2到4行代码
set listsize 20    设置每次list显示的行数
list filename:...  显示文件filename中的内容,后面的内容同上

3.调试界面指令

shell clear  清除屏幕
shell cmd    其他终端指令都需要加shell

4.断点

break 6              表示在第6行插入断点
break fun            fun表示函数名
break 7 if n==6      带有条件的断点,n是程序中的变量(条件不仅限于此)
enable n             使能断点,n为系统分配的断点号
enable n             屏蔽断点,n为系统分配的断点号

clear i              表示清除行号为i的断点
clear fun            表示清除函数fun处断点
clear                表示清除所有断点

delete n             表示清除断点号为n的断点

delete               表示清除所有断点

5.程序运行

run        程序运行
continue   到达断点时使的程序继续运行
next       单步运行
step       加入函数的内部

nexti      同next,但是只执行一条机器指令
stepi      同step,但是只执行一条机器指令

print i    打印变量i的值

kill       结束当前运行的程序

6.程序追踪

watch b        追踪变量b的变化情况,前提是变量已经存在(需要在程序运行过程,并且变量已经被创建)
               当追踪的变量改变时,将会图纸运行,并显示变量的变化情况
watch 表达式   当满足表达式时程序中断
whatis fun     查看函数fun返回值类型
whatis a       查看变量a返回值类型,变量需要被创建

ptype a        查看变量a的结构体定义情况,变量a需要已经被创建

7.设置变量值

print i=10          设置变量i=10
set variable i=10   设置变量i为10

8.调试信息显示

info breakpoints     查看断点信息
info watchpoints     查看观察点信息

9.获取帮助信息

help cmd    在gdb调试过程,查询gdb指令的使用说明

参考:GDB调试工具入门_Junhan's Blog-CSDN博客

          Linux环境c程序设计

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值