GDB调试C和C++

GDB调试C和C++,通过前面的学习,读者已经了解了什么是 GDB,以及如何下载并安装它。从本节开始,我们将正式学习使用 GDB 调试 C、 C++ 程序。

启动GDB调试

启动GDB调试,GDB 调试 C/C++ 程序 一节演示了用 GDB 调试 C(或者 C++)程序的整个过程,其中对 main.exe 文件启动 GDB 调试。

gdb run命令

gdb run命令,使用 GDB 调试器调试程序的过程,其实就是借助 GDB 调试器来监控程序的执行流程,进而发现程序中导致异常或者 Bug 的代码。

GDB break命令

GDB break命令,GDB设置断点,默认情况下,程序不会进入调试模式,代码会瞬间从开头执行到末尾。要想观察程序运行的内部细节(例如某变量值的变化情况)。

GDB watch命令

GDB实时监控变量,GDB break 命令 一节,给大家介绍了使用 break 命令在程序某一行的位置打断点。但还有一些场景,我们需要监控某个变量或者表达式的值。

GDB catch命令

GDB catch命令,知道,GDB 调试器支持在被调试程序中打 3 种断点,分别为普通断点、观察断点和捕捉断点,其中普通断点用 break 命令建立,观察断点用 watch 命令建立。

GDB条件断点

GDB条件断点(condition命令)详解,面章节给大家介绍了 GDB 调试器中普通断点、观察断点以及捕捉断点的功能和用法。

gdb单步调试

GDB单步调试,用 GDB 调试器的几种方式 一节中提到,借助 next 命令可以控制 GDB 单步执行程序。

GDB断点调试

GDB断点调试,过在程序的适当位置打断点,观察程序执行至该位置时某些变量(或表达式)的值,进而不断缩小导致程序出现异常或 Bug 的语句的搜索范围。

GDB查看变量值

GDB查看变量值,前面章节中提到,使用 GDB 调试程序,最常用的方法是:单步调试或者断点调试程序,期间通过查看某个变量或者表达式的值,判断当前程序的执行过程是否正确,不断缩小异常或 Bug 位于代码中的范围,最终找到并修复。

GDB print命令

GDB print命令,GDB print 和 display 命令 一节中,就如何在 GDB 调试代码过程中查看某一变量或表达式的值,对 print 和 display 命令的功能和基本用法做了详细的介绍。

GDB禁用删除断点

GDB禁用删除断点,我们知道,GDB 调试器支持 3 种断点,分别为普通断点(用 break 命令创建)、观察断点(用 watch 命令建立)以及捕捉断点(用 catch 命令建立)。