在Ubuntu下可使用GDB、Valgrind等工具调试C++程序,以下是具体方法:
安装GDB
sudo apt update
sudo apt install gdb
编译代码(添加调试信息)
g++ -g -o program program.cpp # -g选项生成调试信息
启动GDB并调试
gdb program # 启动GDB并加载程序
常用GDB命令
命令 | 功能 |
---|---|
break |
设置断点(如break main 或break file.cpp:10 ) |
run |
运行程序 |
next |
单步执行(不进入函数) |
step |
单步执行(进入函数) |
print |
打印变量值(如print x ) |
backtrace |
查看调用堆栈 |
quit |
退出GDB |
安装Valgrind
sudo apt install valgrind
检测内存问题
valgrind --leak-check=full ./program # 检测内存泄漏
安装VS Code及C/C++扩展
配置调试环境
.vscode
文件夹,添加launch.json
(配置调试器)和tasks.json
(配置编译任务,需包含-g
参数)。启动调试
F5
或点击调试图标,支持断点、单步执行等操作。根据需求选择工具,GDB适合命令行调试,VS Code适合图形化操作,Valgrind专注内存问题检测。[1,2,3,4,5,6,7,8,9,10]