在 Linux 中调试 C++ 程序,您可以使用多种调试工具,如 GDB(GNU 调试器)和 DDD(Data Display Debugger)
-
安装 G++ 编译器和 GDB 调试器: 首先,确保您已经安装了 G++ 编译器和 GDB 调试器。如果没有,请使用以下命令安装:
对于 Ubuntu 或 Debian 系统:
sudo apt-get install g++ build-essential gdb
对于 Fedora 或 CentOS 系统:
sudo dnf install gcc-c++ make gdb
-
编写一个简单的 C++ 程序: 创建一个名为
example.cpp
的文件,并编写一个简单的 C++ 程序,如下所示:#include
int main() { std::cout << "Hello, World!" << std::endl; return 0; } -
编译 C++ 程序: 使用 G++ 编译器编译 C++ 程序,并在编译时添加调试信息。使用
-g
选项来生成调试信息。例如:g++ -g -o example example.cpp
这将生成一个名为
example
的可执行文件,其中包含调试信息。 -
使用 GDB 调试程序: 要使用 GDB 调试程序,请在终端中输入以下命令:
gdb ./example
这将启动 GDB 并加载名为
example
的程序。您现在可以设置断点、运行程序、单步执行代码等。以下是一些常用的 GDB 命令:
break
或b
:在指定行设置断点。例如,break 4
将在第 4 行设置断点。run
或r
:运行程序。例如,run arg1 arg2
将以arg1
和arg2
作为参数运行程序。next
或n
:单步执行下一行代码,不进入函数。step
或s
:单步执行下一行代码,进入函数。continue
或c
:继续执行程序,直到遇到下一个断点。print
或p
:打印变量的值。例如,print variable_name
将打印variable_name
的值。quit
或q
:退出 GDB。
-
调试程序: 使用上述命令调试程序,直到遇到断点。然后,您可以使用
next
、step
和print
等命令来查看程序的执行状态和变量值。
通过这些步骤,您可以在 Linux 中调试 C++ 程序。请注意,这只是一个简单的示例,实际项目可能涉及更复杂的调试技巧。