GDB调试基本操作

GDB调试基本操作

GDB是什么?GDB是一个Linux平台下的调试工具,可以用来调试C语言 ,C++等语言编写的程序。下面介绍了GDB的几种基本操作。和在Shell下相同,可以使用Tab键补全命令。

  • GDB的启动
gdb
gdb fiel prog

想要使用GDB调试程序需要在编译时在源文件名前加上-g命令

gcc [other flags] -g <source files> -o <output file>

进入GDB后,你的命令行中会出现这样的提示符

(gdb)
  • 退出GDB
(gdb)q
  • 选择调试的程序

如果你在进入GDB时没有选择要进行调试的程序:

(gdb)file prog
  • 运行程序
(gdb)run
  • 设置断点

GDB中有多种设置断点的方式

(gdb) break file.c:6

在源程序的某一行设置断点

(gdb) break my_func

在进入某个函数时设置断点

(gdb) break file1.c:6 if i >= ARRAYSIZE

设置一个条件断点,只有在条件满足时才会中断程序。

(gdb) watch my_var

每当my_var的值改变时中断程序。

  • 继续运行程序
(gdb) continue

继续运行程序,直到遇到下一个断点

(gdb) step

执行下一条语句

(gdb) next

执行下一条语句,与step不同的是,next会将循环当作一条语句。

(gdb) finish

执行到当前函数结束为止

  • 查看变量的值
(gdb) print my_var
(gdb) print/x my_var

/x命令会将变量以十六进制的形式显示。

print还可以用来查看指针的值。

  • 删除断点
(gdb) delete num

num是断点的编号

  • 查看堆栈
(gdb) backtrace
(gdb) where
  • 查看断点信息
(gdb) info breakpoints

参考文献
GDB Tutorial

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值