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

相关推荐
测试界的小码农9 小时前
【Linux 命令实战(03):文件创建、复制、移动与删除,掌握 touch、mkdir、cp、mv、rm】
linux·服务器·php
|_⊙9 小时前
网络层协议 IP
服务器·网络·tcp/ip
叼烟扛炮10 小时前
Linux 学习笔记(六十):单线程的逆袭——epoll 高并发服务器实战
linux·服务器·网络·笔记·学习·算法
H.莓飛11 小时前
【C++】【STL】vector_OJ题
linux·服务器·开发语言·数据结构·c++·visual studio
Rabitebla11 小时前
【Linux操作系统】进程篇(十一):进程程序替换——从底层原理到 exec 函数族
linux·服务器·c++·笔记·学习·算法
沫璃染墨12 小时前
从零入门计算机网络系列(十五):TCP可靠传输机制详解——从序号与确认应答到乱序处理
服务器·网络·c++·tcp/ip·tcp
xyzzklk14 小时前
变相解决华为Mate 8锁屏后无法建立入站网络连接
linux·运维·服务器·网络·华为·go·安卓
叼烟扛炮16 小时前
Linux 学习笔记(五十九):epoll 的生死抉择——LT 与 ET 模式
linux·运维·服务器·网络·笔记·学习·php
Android系统攻城狮1 天前
Linux FFmpeg深度解析之avcodec_align_dimensions调用流程与实战(二十九)
服务器·linux音视频·音视频进阶·ffmpeg音视频
叼烟扛炮1 天前
Linux 学习笔记(五十六):IO 多路复用初探——select 的“三宗罪”
linux·服务器·数据库·笔记·学习·php