1. 代码举例
//example.c
#include <stdio.h>
int addNumbers(int num1, int num2) {
return num1 + num2;
}
int main() {
int a = 10;
int b = 20;
int sum = addNumbers(a, b);
printf("The sum is: %d\n", sum);
return 0;
}
2. 代码编译带上-g
gcc -g -Wall -o example example.c
gdb example
3. gdb运行example可执行文件,如果有参数也不用带上,后面的run的时候再带参数
gdb example //会进入(gdb)交互页面
4. (gdb)交互页面调试源代码
查询断点:(gdb) b //输入break或者b,表示查询断点
设置断点:(gdb) break 1 //在源代码第1行设置断点,或者简写 b 1
启动程序:(gdb) run //或简写为 r 开始运行,如果有参数 r 后面继续添加参数,多个参数之间空格隔开
单步执行:(gdb) step (进入函数内部) //简写 s
下步执行:(gdb) next (不进入函数内部) //简写 n
查看变量值:(gdb) print variable_name //简写为 (gdb) p variable_name。
继续执行直到下一个断点:(gdb) continue //简写为 (gdb) c
退出GDB:(gdb) quit //简写为 (gdb) q