C++调试工具及调试技术
-
gdb的使用及常用命令
-
g++ 编译附加调试信息
命令:
g++ 文件名.cpp -o 可执行文件名.exe -g //-g附加调试信息 -
启动gdb
命令:
gdb 可执行文件名.exe -tui //-tui开启图形界面,不加-tui命令行界面 -
查看堆栈
命令:
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 以字符串输出
-
列出源代码
命令:
list //简写为l -
执行控制
next nstep scontinue cuntil u
-
打印一系列表达式
命令:
print //可简写为p
-