Gdb
简介¶
gdb是GNU项目的调试器,支持很多语言,想要使用gdb调试,在编译时需要加入-g -o0
选项。
常用命令¶
图形界面¶
源码相关¶
流程控制¶
断点¶
# 下软件断点
b main
b filename:linenum
b Class::unction
# 列出断点
info b # 简写 i b
# 删除断点
delete 断点编号
# 删除所有断点
delete
# 暂时禁用断点
disable 断点编号
# 启用断点
enable 断点编号
# 设置条件断点
b filename:linenum if val==0
读取和写入内存¶
# 格式化结构体打印
set print pretty on
# 打印变量
p 变量名
p 'filename'::a
p 'functionname'::a
# 按16进制打印
p/x 变量
# 打印寄存器数据
p $ax
其他¶
汇编级调试¶
# 实时显示寄存器
layout regs
# 打印下一条要执行的汇编代码
set disassemble-next-line on
# 转换成Intel汇编格式
set disassembly-flavor intel
# 单步执行,单步进入
ni / si
本文总阅读量 次