gdb的使用
C++调试工具及调试技术
-
gdb的使用及常用命令
-
g++ 编译附加调试信息
命令:
g++ 文件名.cpp -o 可执行文件名.exe -g //-g附加调试信息 -
启动gdb
命令:
gdb 可执行文件名.exe -tui //-tui开启图形界面,不加-tui命令行界面
gdb -p pid //调试正在运行的进程 -
查看堆栈
命令:
bt/where查看堆栈bt full完整版,显示local变量bt n 显示前n个堆栈
-
查看栈帧
frame //可简写为ff + number表示去到对应的栈帧up/down 栈帧上下切换
-
加断点
-
命令:
break 行号(或函数名) //break可简写为b -
显示所有断点:
i b -
清除所有断点:
d b -
删掉第n个断点:
d n //n为断电号n -
清除第n行的断点:
c n
-
-
运行程序:
命令:
run // 可简写为r -
查看内存
命令:
x- examine
- 查看内存
- x/x 以十六进制输出
- x/d 以十进制输出
- x/c 以单字符输出
- x/i 反汇编 – 通常,我们会使用 x/10i \(ip-20 来查看当前的汇编(\)ip是指令寄存器)
- x/s 以字符串输出
命令:info locals //查看当前栈局部变量
-
列出源代码
命令:
list //简写为l -
执行控制
next nstep scontinue cuntil u
-
打印一系列表达式
命令:
print //可简写为p
-
浙公网安备 33010602011771号