gdb调试器
来源:互联网 发布:高潮是什么体验知乎 编辑:程序博客网 时间:2024/06/04 18:29
Linux下的gdb调试器,是一款GNU组织开发并发布的UNIX/Linux下的程序调试工具。在进行调试时,要主义gdb进行调试的是可执行文件,而不是源代码文件。因此要先通过gcc编译生成可执行文件才能用gdb进行调试。
在gcc编译的时候,要加上选项“-g”,这样编译出的可执行代码中才能包含调试信息,否则gdb无法载入该可执行文件。gdb是命令行调试环境,调试程序都在提示符“(gdb)”后输入相应的命令,gdb的命令很多,可以在提示符后输入help进行查找。
命令格式
作用
list 行号|<函数名>
查看指定位置的程序源码
info break
显示断点信息
run运行程序
print 表达式 |变量
查看程序运行对应表达式和变量的值
next
单步恢复程序运行,但不进入函数调用
step
单步恢复程序运行,且进入函数调用
continue
继续执行函数,直到函数结束或遇到新断点
break
设置断点
(gdb)l 查看源文件,一次显示10行
(gdb)list/l 行号 查看指定位置的代码
(gdb)b 函数名/行号 在某函数或指定位置设置断点
(gdb)info b 查看断点信息(有多个断点,Num显示断点序号)
(gdb)r 行号 gdb默认从第一行开始运行,如果要指定行开始运行,则使用该命令
(gdb)p 变量名 查看指定变量的值
(gdb)set 变量=设定值 修改变量值。gdb显示变量时都会在对应值前加“%n”标记,以后再引用的话可以直接使 用 “%n”,提高效率。
(gdb)n或s 单步运行程序。若有函数,调用时s会进入该函数,而n不会进入该函数。
(gdb)c 查看完变量或堆栈后可以输入“c” 命令恢复程序的正常运行,把剩余的程序执行完。
(gdb)q 退出gdb环境
在gcc编译的时候,要加上选项“-g”,这样编译出的可执行代码中才能包含调试信息,否则gdb无法载入该可执行文件。gdb是命令行调试环境,调试程序都在提示符“(gdb)”后输入相应的命令,gdb的命令很多,可以在提示符后输入help进行查找。
常用的gdb命令
命令格式
作用
list 行号|<函数名>
查看指定位置的程序源码
info break
显示断点信息
run运行程序
print 表达式 |变量
查看程序运行对应表达式和变量的值
next
单步恢复程序运行,但不进入函数调用
step
单步恢复程序运行,且进入函数调用
continue
继续执行函数,直到函数结束或遇到新断点
break
设置断点
(gdb)l 查看源文件,一次显示10行
(gdb)list/l 行号 查看指定位置的代码
(gdb)b 函数名/行号 在某函数或指定位置设置断点
(gdb)info b 查看断点信息(有多个断点,Num显示断点序号)
(gdb)r 行号 gdb默认从第一行开始运行,如果要指定行开始运行,则使用该命令
(gdb)p 变量名 查看指定变量的值
(gdb)set 变量=设定值 修改变量值。gdb显示变量时都会在对应值前加“%n”标记,以后再引用的话可以直接使 用 “%n”,提高效率。
(gdb)n或s 单步运行程序。若有函数,调用时s会进入该函数,而n不会进入该函数。
(gdb)c 查看完变量或堆栈后可以输入“c” 命令恢复程序的正常运行,把剩余的程序执行完。
(gdb)q 退出gdb环境
- GDB 调试器使用手册
- GDB 调试器使用手册
- GDB 调试器使用手册
- GDB 调试器使用手册
- GDB调试器使用手册
- gdb调试器
- GDB 调试器使用手册
- gdb - GNU 调试器
- Gdb调试器(读书笔记)
- 使用GDB调试器
- gdb 调试器
- 调试器GDB小结
- GDB调试器
- GDB调试器
- 调试器GDB
- gdb - GNU 调试器
- 调试器GDB
- Gdb调试器
- 字符串基本函数
- 常用表单校验JS
- D3D9 SDK文档笔记1---为什么开始?
- 我的生活
- 一些android 技巧汇总(menu,activity,AlertDialog...)
- gdb调试器
- LINUX的端口和服务
- 使用标准库类型size_type时遇到问题。
- J2ME中ImageItem和Image实现猜迷游戏练习
- JMS第一讲 JMS应用场景说明及ActiveMQ5.0实例开发
- 信仰
- 中间件 ——信息系统综合集成的利器
- Keep a right mindset
- 逻辑数码字符键盘