目录
介绍
代码分为debug模式和release模式
如果一份代码要被调试,这份代码必须是debug
Linux下编译代码默认是是release模式
如果你想代码是debug模式
必须加上 - g
小提:
vim默认:命令模式
gcc默认:release模式
Linux中形成的可执行程序格式:ELF
在debug发布时,一定会给可执行程序内部添加debug信息
debug形成的可执行程序 > release形成的可执行程序
使用
gdp + 可执行程序
1.打开代码
l (list)
l 0 从0行开始打开代码
2.运行
r (run)
3.打断点
b (breakpoint) + 行号
b 源文件:行号
b 函数 (打在函数入口处)
b 文件名 函数或者行号
4.查看断点
info b
每个断点都有编号
5.删除断点
d(deletepoint)+ num(断点编号)
6.禁用和开启断点
disable + Num 禁用断点
enable + Num 开启断点
7.逐过程(把函数当成一条语句)
n
8.逐语句
s
9.查看变量细节
display +变量/变量地址(常显示)
undisplay +变量/变量地址(关闭常显示)
10.查看变量细节
p +变量/变量地址
11.运行
until 运行到指定位置
finish 运行到当前函数结尾
c 从一个断点运行到另一个断点
12.查看调用堆栈
bt
13.更改变量的值
set var i(变量)= ?
14.查看所有变量
info locals