GDB 调试

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 直接查看界面

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值