一、基础概念
GDB(GNU Debugger)是一个功能强大的调试工具,主要用于调试C、C++等编程语言编写的程序。在Linux系统中,它允许开发者设置断点、单步执行代码、查看变量值、检查内存等操作,以便定位程序中的错误。
二、优势
三、类型
GDB主要分为以下几种类型:
四、应用场景
五、常见问题及解决方法
-g
选项)。六、示例代码
假设有一个简单的C++程序example.cpp
:
#include <iostream>
int add(int a, int b) {
return a + b;
}
int main() {
int x = 10;
int y = 20;
int z = add(x, y);
std::cout << "Sum: "<< z << std::endl;
return 0;
}
编译并使用GDB调试:
$ g++ -g example.cpp -o example
$ gdb ./example
在GDB中设置断点并运行:
(gdb) break add
Breakpoint 1 at 0x1149: file example.cpp, line 5.
(gdb) run
Starting program: /path/to/example
Breakpoint 1, add (a=10, b=20) at example.cpp:5
5 return a + b;
(gdb) print a
$1 = 10
(gdb) print b
$2 = 20
(gdb) continue
Continuing.
Sum: 30
[Inferior 1 (process 1234) exited normally]
以上示例展示了如何在GDB中设置断点、查看变量值以及继续执行程序。
领取专属 10元无门槛券
手把手带您无忧上云