【linux】 GDB调试

版权声明:本文为博主原创文章,转载请注明出处-- https://blog.csdn.net/qq_38790716/article/details/84840928

写在前面

最近开始学习linux,关于linux的一些基本命令以前或多或少接触过一些,但未深入了解,有关于GDB调试只是听过该名字,没有动手尝试过,但作为一个“有梦想”的程序员,balabala…所以学习gdb调试是基础的、也是必要的

推荐termius

termius,是一个可以远程连接你的云主机的一个软件,在windows、Android及Mac上都可用,windows及Android都可在应用商店下载,大概就长下面这样子(也可以根据个人喜好更改风格):

在这里插入图片描述

使用ssh + 主机名@IP地址   

推荐理由:方便快捷(内心os:putty对我太不友好了)

gdb调试

下面用一个简单的C++例子来介绍简单的gdb调试:

  1. 首先用vim创建一个文件,名为test.cpp(一个求和的程序),然后编译
    在这里插入图片描述

  2. 进入gdb,采用gdb -q test,可以去除一些关于gdb的信息
    在这里插入图片描述
    也可以先进入gdb,然后加载文件
    在这里插入图片描述
    在这个阶段如果还想看自己写的代码,可以采用list + 行数(如果不加行数则默认为10)、list 5,10表示列出5到10行的代码
    在这里插入图片描述

  3. 加断点进行调试,可以在你觉得有问题的代码行数前加断点,例:break 6
    在这里插入图片描述
    也可以以条件表达式设置断点
    在这里插入图片描述
    显示所加断点信息
    在这里插入图片描述
    清除某个断点
    在这里插入图片描述
    清除所有断点
    在这里插入图片描述

  4. 开始调试,run,进入第一个断点
    在这里插入图片描述
    continue,进行下一个断点

    然后采用print打印出你想看到的值,next进入到下一步
    在这里插入图片描述

到这里简单的gdb调试就完了,当然gdb调试不仅仅只有这些命令,以后有时间再整理一下有关gdb的一些命令!

参考bu_想的博客

猜你喜欢

转载自blog.csdn.net/qq_38790716/article/details/84840928