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

相关推荐
星恒随风2 小时前
MySQL 从零入门(三):表的约束详解
linux·服务器·数据库·笔记·mysql
坤坤子吖7 小时前
Linux网络编程:自定义应用层协议与 JSON 序列化
linux·服务器·网络·c++·笔记·json
青瓦梦滋7 小时前
Redis主从复制
服务器·数据库·redis·缓存·bootstrap
沫璃染墨8 小时前
从零入门计算机网络系列(十八):TCP连接管理详解——从三次握手与四次挥手到TIME_WAIT机制
运维·服务器·网络·c++·网络协议·tcp/ip·tcp
Felven9 小时前
华为鲲鹏920s芯片serdestool工具使用说明
linux·运维·服务器·华为·鲲鹏920·serdestool
LabVIEW开发9 小时前
Omron PLC:接 LabVIEW 常踩的 5 个坑
服务器·网络·labview·labview知识·labview功能·labview程序
我是koten15 小时前
【运维杂谈】K8s遇到Terminating的名称空间删除不了怎么办?(解决方案亲测有效)
linux·运维·服务器·云原生·kubernetes·k8s·名称空间
爱吃奥利奥_wen1 天前
SQL Server 基础语法详解:从建库建表到约束与增删改查
服务器·数据库·oracle
Android系统攻城狮1 天前
Linux FFmpeg深度解析之avio_open调用流程与实战(三十八)
linux·运维·服务器·ffmpeg·音视频进阶·ffmpeg音视频
雪落漂泊1 天前
Linux进程(五):进程地址空间篇
linux·运维·服务器