添加编译选项 gcc 编译添加 -g 添加调试信息
gdb xxx 进入调试模式
或者 gdb进入 再file进入需要调试的程序
run® : 重新载入运行
continue©:continue 接着运行
list(l):显示代码
ctrl+c: 暂停
info b :显示断点
delete num:删除某个断点
delete:删除全部断点
b xxxx:设置断点
b 类:函数名():在函数入口处设置断点
b 路径/文件名:行数 :指定文件某一行添加断点
start(st):开始执行程序,在main第一句停下来
step(s) : 执行下一语句, 遂语句
next(n): 执行下一语句,遂过程
finsh: 跳出函数
until: 执行当前后一行,用于跳出循环
print§:打印变量(数组可以按照c结构体->或者.取自变量)
p /x :按照16进制打印
p (char[32]) * 首地址:打印字符串32个数
p /x (char[20])*var1
p * 首地址@32:打印字符串32个数
p /x var1@4
set var name=v :设置变量的值
watch 变量:指定变量的值变化的时候,程序停住
(程序运行时才有效)
rwatch 变量:变量被写的时候, 程序停住
(程序运行时才有效)
awatch 变量:变量被读或者被写的时候, 程序停住
(程序运行时才有效)
info watchpoints: 列出所有观察点
display(disp) 变量:跟踪变量,每次停下来都显示这个变量的值
(程序运行时才有效)
backtrace(bt):查看函数调用信息(堆栈)
frame(f):查看栈帧
quit(q) : 退出gdb环节