gdb学习笔记

这篇博客介绍了GDB的基本使用,包括如何创建并运行C++程序,设置和管理断点,查看程序状态以及执行控制。此外,还分享了GDB的一些实用技巧,如执行shell命令和开启日志功能。适合C/C++初学者学习调试技巧。
摘要由CSDN通过智能技术生成

一、gdb初步

1. 创建一个hello.cpp

#include <iostream>
using namespace std;

void t1(){
  int b = 1;
  b = 3;
  return;
}

int main(){
  cout<<"Hello World"<<endl;
  int a = 5;
  t1();
  return 1;
}

2. 进入gdb

  • 编译 g++ -g hello.cpp

  • 进入gdb gdb a.out

3. 基础gdb命令

  • 执行程序 r (run)

  • 退出gdb q (quit)

  • 查看源代码 l (list)

断点相关

  • 打断点 b 函数名b 程序行数 (break)
    b mainb 4

  • 删除断点 clear 函数名clear 程序行数

  • 查看断点 info b

执行相关

  • 继续执行到下一个断点或结束 c (continue)

  • 下一步 n next, 显示下一句未执行的语句

  • 步入 s (step)

查看变量值

  • p a (print)

二、gdb 小技巧

  1. 写shell命令

    shell ls

  2. 开启日志功能

    set logging on, 会生成一个gdb.txt

  3. 查看使用方式
    终端输入 man gdb

三、参考

[1]: 【小神仙讲 GDB】 通俗易懂版教程 | 一小时入门GDB | Debug | c/c++程序员必备 | 佩雨小神仙

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值