linux gdb调试

首先,先准备好代码,我以快排为例:
在这里插入图片描述
把head.h,main.cpp,quicksort.cpp准备好。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
开始编译,生成可执行文件。注意,如果要进行gdb调试,必须加 -g

g++ *.cpp -o myapp -g  
gdb myapp

gdb调试:

	1. 启动gdb
			start -- 只执行一步
				n -- 相当于step over
				s -- 相当于step into -- 可以进入到函数体内部
				c 等价 continue -- 直接停在断点的位置
			
	2. 查看代码:
			l 等价 list
			l 行号(或函数名)
			l 文件名:行号(或函数名)
	3. 设置断点:
			设置当前文件断点:
				b 等价 break
				b 行号(或函数名)
				
			设置指定文件断点:
			    b 文件名:行号(或函数名)
			设置条件断点:
				b 10 if i==19
			删除断点:
				delete 等价 del 等价 d
				d 断点的编号
				   获取编号: info 等价 i
										info b
	4. 查看设置的断点
	5. 开始 执行gdb调试
			执行一步操作: start
				继续执行:n或s
			执行多步, 直接停在断点处:continue
	5. 单步调试
			进入函数体内部: s
				从函数体内部跳出: finish --注意,如果断点打在函数内的循环体中,此时执行finish会报错,必须先删除该断点
			不进入函数体内部:n
			退出当前循环: u
	6. 查看变量的值: p 等价 print
	7. 查看变量的类型: ptype 变量名
	8. 手动设置变量的值(加快程序的执行速度):   set var 变量名 = 赋值
	9. 设置追踪变量
			display 变量名
			取消追踪变量
			undisplay 编号
					获取编号: info display
	10. 退出gdb调试
				quit
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值