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查询)

相关推荐
Brilliantwxx2 小时前
【Linux】 进程(9)程序与进程地址空间(基础+进阶+面试题)
linux·运维·服务器·开发语言·c++
不怕犯错,就怕不做3 小时前
git prune 自动删除本地记录中那些远程已经不存在的分支引用
linux·服务器·git
weixin_416667964 小时前
【无标题】
运维·服务器·网络
上海云盾-小余6 小时前
流量攻击复盘:为什么 WAF 完好,业务依旧瘫痪
运维·服务器·网络
我命由我123457 小时前
Linux - Linux/POSIX 路径斜杠折叠规则
linux·运维·服务器·android studio·android jetpack·android-studio·android runtime
Uncertainty!!8 小时前
Linux 主机无法完成校园网认证排查记录:从 DHCP、ARP 到 Portal 认证流程分析
linux·运维·服务器
其实防守也摸鱼8 小时前
权限提升与横向移动:从内网渗透到域控的完整技术图谱
运维·服务器·数据库·安全·github·copilot·渗透
mounter6259 小时前
突破零停机演进:Linux 内核 Live Update Orchestrator (LUO) 架构设计与热升级演进
linux·服务器·linux kernel·kernel·kho·luo
黑泽明*9 小时前
KVM虚拟化入门与热迁移实战
运维·服务器
波多利希最高礼仪的握力器9 小时前
安全复制SCP
linux·服务器·安全