linux C编程 gdb的使用
2024-08-30 17:09:05
linux C编程 gdb的使用
通常来说,gdb是linux在安装时自带的,在命令行键入“gdb”字符并按回车键会启动gdb调试环境。
1、gdb的基本命令
命令 | 说明 |
file | 装入想要调试的可执行文件 |
kill | 终止正在调试的程序 |
list | 列出产生执行文件的部分源代码 |
next | 执行一行源代码但不进入函数内部 |
step | 执行一行源代码且进入函数内部 |
run | 执行当前被调试的程序 |
quit | 退出gdb |
watch | 动态监视一个变量的值 |
make | 不退出gdb而重新产生可执行文件 |
call name(args) | 调用并执行名为name,参数为args的函数 |
break | 在代码里设置断点,使程序执行到此处被挂起 |
2、gdb运行模式的选择
gdb提供了包括“批模式”或“安静模式”在内的一系列运行模式,可以通过gdb运行时在命令行通过选项来选择。
-n | 不执行任何初始化文件中的命令(一般初始化文件称为.gdbinit)。 一般情况下载这些文件中的命令行会在所有的命令行参数都被传给gdb后执行 |
-q | 设定gdb的运行模式为“安静模式”,可以不输出介绍和版权信息 这些信息在“批模式”中也不会显示 |
-batch | 设定gdb的运行模式为“批模式”,gdb在“批模式”下运行时,会在执行命令文件中的所有命令,当所有命令都被成功执行后返回状态0 如果执行过程中出错,gdb返回一个非零值 |
-cd dir | 把dir作为gdb的工作目录,而非当前目录(gdb缺省时把当前目录作为工作目录) |
3、gdb使用步骤
(1)运行“gdb+待调试的可执行文件名称”命令来启动调试。
(2)使用“b”快捷键在程序开始处设置断点,然后使用“run”开始调试
(3)使用“n”快捷键即可执行下一条程序,期间还可以使用其他命令来观察相应的变量的运行情况。
(4)使用break+数字/break +该行代码名称 ,来设置断点
(5)使用c,表示continue的缩写
(6)使用p命令+变量,来打印当前变量的值
(7)使用finish来结束函数
(8)使用q来退出调试
最新文章
- WinNTSetup v3.8.7 正式版绿色增强版
- shell 和awk性能对比
- MySQL 获得当前日期时间 函数
- Swustoj题目征集计划
- QT5: QApplication, no such file or directory
- 玩转web之javaScript(五)---js和jquery一些不可不知的方法(input篇)
- golang sql database drivers
- [Spark内核] 第33课:Spark Executor内幕彻底解密:Executor工作原理图、ExecutorBackend注册源码解密、Executor实例化内幕、Executor具体工作内幕
- SpringBoot整合Dubbo,并实现dubbo实现动态调用
- 利用反射--调用一个按钮的Click事件
- 手把手教Electron+vue的使用
- 使用IEDA远程调试
- Spring依赖包
- 条款2:尽量以const, enum, inline替换#define
- jQuery ajax的jsonp跨域请求
- Jsp应用EL和JSTL实例对比。
- orcale 之pl/sql例外
- sysbench 环境安装,压测mysql
- java 基础 --Collection(Set)
- Mabatis入门案例