【基本条件】
编译时需要加--gcc -g选项;
【基本命令】
l 查看源码
b 加断点
r 开始运行调试
n 下一步
s下一步但是会进入子函数
p 输出数据
c跳过直到下一个断点处
q表示程序退出
info args 查看当前函数参数值
info locals 看当前函数栈上值信息
info registers 表示查看寄存器值
info symbol 堆栈
b 17 if i == 8. 在17行设置一个断点,并且只有i==8的时候才会触发
d 后面跟断点索引1,2,3..(每打一个断点,都会有相应索引号)
clear 行数或名称. 删除哪一行断点. 看下面演示
【解析core文件】
ulimit -c unlimited
echo "/tmp/core-%e-%p" > /proc/sys/kernel/core_pattern
gcc -o main -g a.c
gdb main /tmp/core-main-10815