1.创建测试文本
#include<stdio.h>
void f(){
printf(" f doing !\n");
};
int i = 0;
void main(){
f();
i = 4;
printf("main doing !!\n");
};
2.编译
gcc test.c 默认编译名称为a.out
gcc -g test.c 默认是release版本的,可以加上-g变为debug版本的更多符号
gcc -g test.c -o test.out 添加-o符号可以指定编译后的名称
3.调试
gdb a.out # 开始调试
(gdb) b /home/code/test.c:16 # 指定断点打在test.c 16行
(gdb) b main # 指定断点打在main函数上
(gdb) p 变量值 # 可以查看变量值的数值
(gdb) c # Continuing. 继续向下执行函数
(gdb) bt # 查看函数调用栈
(gdb) s # 进入函数
(gdb) info b # 查看目前有多少个断点
(gdb) d 1 #删除第一个断点
(gdb) watch i # 监视值的变化
(gdb) info r #查看寄存器
(gdb) layout src 直接查看界面