温馨提示×

Ubuntu C++调试怎么操作

小樊
44
2026-10-22 22:20:58
栏目: 编程语言

在 Ubuntu 下进行 C++ 调试,常见且推荐的方式是使用 GDB(命令行)或 VS Code + GDB(图形界面)。下面从基础到常用操作逐步说明。


一、准备工作(非常重要)

1. 安装编译器和调试器

sudo apt update
sudo apt install build-essential gdb

2. 编译时必须加 -g

没有 -g 无法调试

g++ -g main.cpp -o main

二、使用 GDB 调试(命令行方式)

1. 启动 GDB

gdb ./main

2. 常用 GDB 命令

命令 作用
run / r 运行程序
break main 在 main 函数设断点
break 行号 在指定行设断点
break 文件:行号 指定文件行号
info break 查看断点
delete 断点编号 删除断点
next / n 单步(不进函数)
step / s 单步(进入函数)
continue / c 继续执行
print 变量 / p x 打印变量
backtrace / bt 查看调用栈
frame 编号 切换栈帧
quit 退出

3. 示例

gdb ./main
(gdb) break main
(gdb) run
(gdb) next
(gdb) print a
(gdb) continue

三、调试崩溃(Segmentation fault)

程序崩溃后:

gdb ./main
(gdb) run

崩溃时会自动停住,然后:

(gdb) backtrace

可定位出错函数。


四、VS Code 调试(推荐新手)

1. 安装

sudo apt install code

或官网下载

2. 安装插件

  • C/C++
  • CMake Tools(可选)

3. 配置调试

  1. 打开项目
  2. Ctrl+Shift+D → 创建 launch.json
  3. 示例:
{
  "version": "0.2.0",
  "configurations": [
    {
      "name": "C++ Debug",
      "type": "cppdbg",
      "request": "launch",
      "program": "${workspaceFolder}/main",
      "args": [],
      "stopAtEntry": false,
      "cwd": "${workspaceFolder}",
      "environment": [],
      "externalConsole": false,
      "MIMode": "gdb"
    }
  ]
}
  1. 按 F5 开始调试

五、常见调试技巧

  • 打印变量:p x
  • 查看指针内容:p *ptr
  • 条件断点:
break main.cpp:10 if i == 5
  • 核心转储(core dump):
ulimit -c unlimited
./main
gdb ./main core

六、总结推荐

场景 推荐
服务器 / 无界面 GDB
学习 / 新手 VS Code
复杂项目 VS Code + CMake

如果你愿意,可以告诉我:

  • 你是 命令行还是图形界面
  • 是否使用 CMake
  • 遇到的是 崩溃 / 逻辑错误 / 多线程问题

我可以给你更具体的调试方案。

0 踩