GDB(GNU Debugger)的使用教程

GDB(GNU Debugger)的使用教程

参考文档

官方文档

参考博客

参考视频

使用

启动GDB
  • 首先进入.cpp文件所在的文件夹下,g++ a.cpp -g进行编译,-g是为了输出调试信息。
  • 编译成功后,gdb a.exe(Windows)/a.out(Linux)进入gdb调试。
常用命令(一般都可以通过首字母简写替代)

run 运行程序

break 打断点。方法1:break 函数名给函数打断点 方法2:break a.cpp:行号给某一行打断点

continue 继续执行程序(一步到底或执行到下一个断点)

next 继续执行程序(单步执行)

print 输出变量的值

ptype 输出变量的类型

step 步入函数内部

info 查询信息(如:info break可以查询断点信息)

delete 删除断点(一般在该指令后面加断点编号,断点编号通过info break查询)

相关推荐
Channing Lewis36 分钟前
为什么部署的项目会耗尽系统句柄
服务器
山峰哥2 小时前
SQL调优实战:从索引失效到性能飙升的破局之道
服务器·数据库·sql·性能优化·编辑器·深度优先
玩具猴_wjh2 小时前
JWT优化方案
java·服务器·数据库
盟接之桥2 小时前
制造业EDI数字化:连接全球供应链的桥梁
linux·运维·服务器·网络·人工智能·制造
2501_926978333 小时前
分形时空理论框架:从破缺悖论到意识宇宙的物理学新范式引言(理论概念版)--AGI理论系统基础1.1
java·服务器·前端·人工智能·经验分享·agi
leo_2323 小时前
IP--SMP(软件制作平台)语言基础知识之六十四
服务器·开发语言·tcp/ip·企业信息化·smp(软件制作平台)·应用系统·eom(企业经营模型)
暴力求解4 小时前
Linux-进程(三)进程的孤儿状态和僵尸状态
linux·运维·服务器
小鸡食米4 小时前
Keepalived高可用
运维·服务器·网络
承渊政道4 小时前
Linux系统学习【深入剖析Git的原理和使用(下)】
linux·服务器·git·学习·gitee·vim·gitcode
The森4 小时前
Linux IO 模型纵深解析 06:IO 多路转接与多路复用的内核全链路实现
linux·服务器