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

相关推荐
一条破秋裤6 小时前
Linux 共享内存通信:POSIX 共享内存与 mmap
linux·运维·服务器
贵州山魈羡民6 小时前
【玩转手机】通过 Podroid 上的 Alpine 部署 1Panel,把微型服务器装进口袋
运维·服务器
程序员-Benothing8 小时前
Shell输入输出详解:read、echo、printf、颜色输出
linux·运维·服务器
FPGA小徐9 小时前
从 NEMU 到 AbstractMachine:程序、运行时环境与 AM 完全解析
linux·运维·服务器
..Dauntless..13 小时前
【Linux】进程地址空间初步理解
linux·运维·服务器
Julien200413 小时前
Docker 网络(一)
linux·运维·服务器·ssh·学习方法
杨云龙UP13 小时前
一次数据库查询缓慢故障复盘:大表数据增长、SQL全表扫描导致系统响应异常
linux·运维·服务器·数据库·sql·mysql
C++ 老炮儿的技术栈16 小时前
有符号变量与无符号变量的区别
服务器·开发语言·前端·数据结构·c++·算法·c
程序猿老A17 小时前
阿里云linux服务器安装mysql并实现远程访问
linux·服务器·阿里云
小小、码农18 小时前
〖Linux进程间通信〗IPC全家桶:匿名管道、FIFO、共享内存、消息队列与信号量一篇打通
linux·运维·服务器