📝 GNU Debugger教程

12篇技术文档
  GNU调试器教程

📅  最后修改于: 2020-10-15 11:00:14        🧑  作者: Mango

GDB是GNU调试器的缩写,是用于UNIX系统调试C和C++程序的最受欢迎的调试器。本教程简要介绍了如何使用GDB命令来确保程序没有错误。听众调试器被认为是软件程序员的最好朋友。因此,本教程对于所有想要开发健壮且无错误的程序的程序员都是有用的。先决条件本教程假定您已经知道如何使用C和C++进行编程,并且可以编译和执行程序。...

  什么是GNU调试器? -指导点

📅  最后修改于: 2020-10-15 11:00:40        🧑  作者: Mango

调试器是运行其他程序的程序,允许用户对这些程序进行控制,并在出现问题时检查变量。GNU调试器,也称为gdb,是用于UNIX系统调试C和C++程序的最流行的调试器。GNU调试器可帮助您获取有关以下内容的信息:如果发生核心转储,那么程序崩溃在什么语句或表达式上?如果在执行函数时发生错误,程序的哪一行包含对该函数的调用,以及参数是什么?在程序执行过程中的某个特定时刻,程序变量的值是多少?程序中特定表达式...

  GDB-安装

📅  最后修改于: 2020-10-15 11:01:01        🧑  作者: Mango

在进行安装之前,请通过发出以下命令检查Unix系统上是否已安装gdb:如果已安装GDB,则它将显示GDB中的所有可用选项。如果未安装GDB,则进行全新安装。您可以按照以下简单步骤在系统上安装GDB。步骤1:确保您具有安装gdb的先决条件:符合ANSI标准的C编译器(建议使用gcc-请注意,gdb可以调试其他编译器生成的代码)在要构建gdb的分区上需要115 MB的可用磁盘空间。要安装gdb的分区上...

  GDB-调试符号

📅  最后修改于: 2020-10-15 11:01:28        🧑  作者: Mango

调试符号表将已编译的二进制程序中的指令映射到源代码中其对应的变量,函数或行。此映射可能类似于:程序指令⇒项目名称,项目类型,原始文件,行号已定义。符号表可以嵌入到程序中或存储为单独的文件。因此,如果您打算调试程序,则需要创建一个符号表,该表将具有调试程序所需的信息。我们可以推断出有关符号表的以下事实:符号表适用于该程序的特定版本-如果程序更改,则必须创建一个新表。调试版本通常比零售(非调试)版本更...

  GDB-命令

📅  最后修改于: 2020-10-15 11:01:45        🧑  作者: Mango

GDB提供了大量命令,但是以下命令是最常用的命令:bmain-在程序的开头放置一个断点b-在当前行放置一个断点b N-在第N行放置一个断点b + N-将断点从当前行向下放置N行b fn-在函数“ fn”的开头放置一个断点d N-删除断点编号N信息中断-列出断点r-运行程序直到断点或错误c-继续运行程序,直到下一个断点或错误f-运行直到当前函数完成s-运行程序的下一行s N-运行程序的后N行n-与s...

  GDB-调试程序

📅  最后修改于: 2020-10-15 11:02:27        🧑  作者: Mango

入门:开始和停止gcc -g myprogram.c使用调试选项(-g)编译myprogram.c。您仍然会看到a.out,但是它包含调试信息,可让您在GDB中使用变量和函数名,而不是原始内存位置(不好玩)。gdb a.out使用文件a.out打开GDB,但不运行该程序。您会看到一个提示(gdb)-所有示例均来自此提示。[Rr arg1 arg2r <文件1先前加载的三种运行“ a.out”的方式...

  GDB-调试程序

📅  最后修改于: 2020-10-16 02:17:28        🧑  作者: Mango

入门:开始和停止gcc -g myprogram.c使用调试选项(-g)编译myprogram.c。您仍然会看到a.out,但是它包含调试信息,可让您在GDB中使用变量和函数名,而不是原始内存位置(不好玩)。gdb a.out使用文件a.out打开GDB,但不运行该程序。您会看到一个提示(gdb)-所有示例均来自此提示。[Rr arg1 arg2r <文件1先前加载的三种运行“ a.out”的方式...

  GDB-调试示例

📅  最后修改于: 2020-10-16 02:17:44        🧑  作者: Mango

通过以下示例了解调试程序和转储的核心的过程。调试示例1此示例演示如何捕获由于除零而引发的异常而发生的错误。调试示例2此示例演示了由于未初始化的内存而可以转储内核的程序。这两个程序都是用C++编写的,由于不同的原因会生成核心转储。看完这两个示例之后,您应该可以调试生成核心转储的C或C++程序。...

  GDB-摘要

📅  最后修改于: 2020-10-16 02:17:57        🧑  作者: Mango

在学习完本教程之后,您必须对使用GNU Debugger调试C或C++程序有一个很好的了解。现在,您应该很容易学习其他调试器的功能,因为它们与GDB非常相似。强烈建议您也通过其他调试器来熟悉它们的功能。市场上有很多不错的调试器:DBX调试器-该调试器与Sun Solaris一起提供,您可以使用dbx的手册页(即man dbx)获得有关此调试器的完整信息。DDD Debugger-这是dbx的图形版...

  GDB-快速指南

📅  最后修改于: 2020-10-16 02:19:07        🧑  作者: Mango

什么是GNU调试器?调试器是运行其他程序的程序,允许用户对这些程序进行控制,并在出现问题时检查变量。GNU调试器,也称为gdb,是用于UNIX系统调试C和C++程序的最流行的调试器。GNU调试器可帮助您获取有关以下内容的信息:如果发生核心转储,那么程序崩溃在什么语句或表达式上?如果在执行函数时发生错误,程序的哪一行包含对该函数的调用,以及参数是什么?在程序执行过程中的某个特定时刻,程序变量的值是多...

  GDB-有用的资源

📅  最后修改于: 2020-10-16 02:19:28        🧑  作者: Mango

以下资源包含有关GNU调试器的其他信息。请使用它们来获得有关此方面的更深入的知识。GNU调试器上的有用链接GDB:GNU项目调试器-GNU调试器官方网站GNU调试器-Wikipedia上的GNU调试器如何使用GDB进行调试-GDB的另一本教程有关GNU调试器的有用书籍要在此页面上注册您的网站,请发送电子邮件至...

  -指导点

📅  最后修改于: 2020-10-16 02:19:40        🧑  作者: Mango

->...