Caiwen的博客

GDB Cheatsheet

2026-04-05 09:57

break [symbol]/[*address] 在某个符号或者地址处打断点

clear [symbol]/[*address] 清除某个符号或者地址处的断点

info breakpoints 可以查看当前所有断点

delete 3 删除某个编号的断点

display/i $pc 可以在每条指令执行结束后显示一下指定的寄存器/地址的内容,可以用来持续监控

p/x $寄存器名 可以以十六进制显示某个寄存器的值

disas 反编译当前函数

disas [symbol] 反编译指定函数

disas /m 开始地址,结束地址 反编译指定地址范围的指令

其中的参数可选

  • /m 显示源代码和汇编代码混合视图
  • /r 显示原始指令码
  • /s 显示汇编代码大小

检查内存

语法:x/[重复次数][格式][单位] 地址表达式

三个部分都可以省略。

格式:

字母 含义
x 十六进制
d 有符号十进制
u 无符号十进制
o 八进制
t 二进制
f 浮点数
c 字符
s C 字符串形式,以 \0 结尾
i 反汇编成指令

单位:

字母 大小
b 1 字节
h 2 字节,半字
w 4 字节,字
g 8 字节,双字
最后更新于:2026-04-07 11:39

Caiwen
本文作者
一只蒟蒻,爱好编程和算法