Linux调试工具——GDB

GDB是UNIX及UNIX-like下的调试工具。或许,各位比较喜欢那种图形界面方式的,像VC、BCB等IDE的调试,但如果你是在 UNIX平台下做软件,你会发现GDB这个调试工具相比于VC、z的优点是具有修复网络断点以及恢复链接等功能,比BCB的图形化调试器有更强大的功能。所谓“尺有所短,寸有所长”就是这个道理.

为了使用GDB进行Linux下程序的调试,gdb调试前,需用gcc生成对应的包含调试信息的可执行文件 选项:-g

gcc -g myapp.c -o myapp
注:加入调试信息的可执行文件比普通可执行文件大很多。

一、进入gdb调试模式及内部操作

(1)l:列出源文件
	l  默认不加文件名列出包含main函数的文件
	l insert_into.c:20       指定显示文件中的第20行
	l insert_into.c:select_sort  列出insert_into.c中的select_sort函数,默认每次显示10行,想看见后面的直接enter(enter值默认按上条命令继续执行)
	
(2)打断点:break 22(注意:break可以简写为b)
有特殊需求时,设置条件断点:b 22 if i==0 (条件断点在for循环中,仅在循环内部停止,不在for条件处执行)
(3)help:查看gdb帮助
(4) 查看断点信息:info break (i b)
      查看变量编号:info display

(5)运行gdb中的断点:start (start仅执行一步) 
					n: 继续单步执行,一步一步执行
					s: step(单步) --可以进入当前执行的函数内部:s
		            c: 继续,执行多步,直接停在某个断点的位置
(6)跟踪某个变量的值:display 变量
	不跟踪时: display 变量编号 (变量编号查看方式:info display)
(7)断点停止时:要查看某个变量的当前值 :p j 查看j当前值 (print j)
	 查看某个某个变量的类型:ptype min
								  
					
(8)跳出单次循环: u
	从进入到的函数循环跳出 : finish (需等待断点执行完毕)
(9)删除断点:delete 断点编号 (查看断点编号:info break)
(10)在调试时改变变量的值: set var i = 10
				
(11)run(r):直接运行完程序
(12)退出gdb调试:quit

二、gdb思路整理

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Star星屹程序设计

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

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

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

打赏作者

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

抵扣说明:

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

余额充值