GDB初学
- 什么是GDB
GDB(GNU symbolic debugger)简单地说就是一个调试工具。主要应用在Linux/Unix平台上。 - 如何使用GDB
2.1:首先让你的.c或.cpp文件以debug形式生成(这里的test.c 以及mytest都是自己touch的)
怎样在linux下让程序以DEBUG形式发布
gcc -o mytest test.c -g "以debug形式生成mytest
gcc -o mytest test.c -g ".c文件以debug形式生成mytest
g++ -o mytest test.cpp -g ".cpp文件以debug形式生成mytest
当显示common not found的时候
gdb mytest "如果显示common not found 表示你没有安装gdb 这时你应该使用这个命令
yum install gcc gdb vim "然后让他装一会儿
- GDB的主要命令
进入gdb mytest后会显示
l 显示代码
b num 在num行设置断点
b function 在function函数入口处打断点
info b 查看断点的开启和关闭
disable 断点编号 关闭断点
anable 断点编号 开启断点
run 运行程序,可简写为r
next 单步跟踪,函数调用当作一条简单语句执行,可简写为n
step 单步跟踪,函数调进入被调用函数体内,可简写为s
p &i 查看i变量的地址
p i 查看i的值
p 函数名 查看函数地址
disply i 变量i的值常显示
display &i 变量i的地址常显示
undisplay 变量编号 去掉这个变量显示
bt 查看各级函数
set var 给变量赋值
q 退出函数
until 在一个循环体内单步跟踪时,这个命令可以运行程序直到退出循环体,可简写为u。
continue 继续运行程序,可简写为c