Ubuntu C++编程中如何调试代码
在Ubuntu系统下调试C++代码,使用GCC编译器加GDB调试器。编译时加上-g选项嵌入调试信息,用gdb命令加载可执行程序。通过break设置断点,run启动执行,print查看变量值,next单步跳过,step单步进入,continue继续执行,backtrace查看调用栈,setvariable修改变量值,quit退出调试。
在Ubuntu下调试C++代码,GCC加GDB这套组合拳是最经典的方案。下面一步步来,看看怎么用它们把问题揪出来。
编译时带上调试信息:编译命令里加上
-g选项,这样生成的可执行文件里会嵌入调试符号,GDB才能读懂你的变量名、行号这些信息。命令很简单:g++ -g -o myprogram myprogram.cpp启动GDB:用
gdb命令把程序加载进来:gdb myprogram之后你就会进入GDB的交互界面,所有调试操作都在这里完成。
设置断点:断点是调试的起点。用
break(或简写b)命令来标记暂停位置。比如想在main函数入口处停住:break main如果知道具体文件和行号,也可以直接写:
break myprogram.cpp:42跑起来:用
run(或r)命令启动程序。程序会一直执行到第一个断点处停下,等你来检查。run检查变量和执行流程:程序停住后,这是最常用的操作:
print variable_name:查看某个变量的当前值。next(或n):单步执行一行,如果遇到函数调用,不会跳进去。step(或s):单步执行,但会进入函数内部。continue(或c):继续执行,直到下一个断点。backtrace(或bt):查看当前调用栈,一目了然知道程序是怎么走到这的。frame(或f):切换堆栈帧,方便查看不同函数层的上下文。
修改变量值:调试时想临时改个变量值来测试?用
set variable命令:set variable variable_name = newValue这样就能在不重新编译的情况下,快速验证某些边界情况。
退出GDB:调试完用
quit命令退出:quit
以上只是GDB最基础的操作。实际调试中,它还有条件断点、观察点、内存查看等高级功能,完全够对付大多数场景。如果遇到更复杂的调试需求,直接在GDB里输入help,或者翻翻官方文档,都能找到答案。
Photoshop 2026 是 Adobe 推出的专业图像处理与视觉设计软件,支持 Windows、macOS 和 iPad 等平台,广泛应用于摄影修图、电商设计、平面海报、数字绘画及视觉合成等创作场景。
Blender 是一款免费开源、跨平台的专业 3D 创作软件,集建模、动画、渲染、视频编辑与视觉合成等功能于一体,广泛应用于影视动画、游戏设计和建筑可视化等领域。软件支持 Cycles 物理渲染器与 Eevee 实时渲染引擎,并提供多边形建模、骨骼绑定、物理模拟等专业工具。Blender 兼容 Windows、macOS 和 Linux 系统,安装包轻巧、运行流畅,依托活跃的全球开发者社区持续更新,是从初学者到专业创作者都值得选择的正版 3D 创作工具。
Photoshop 2026 是 Adobe 推出的专业图像处理与视觉设计软件,支持 Windows、macOS 和 iPad 等平台,广泛应用于摄影修图、电商设计、平面海报、数字绘画及视觉合成等创作场景。
Blender 是一款免费开源、跨平台的专业 3D 创作软件,集建模、动画、渲染、视频编辑与视觉合成等功能于一体,广泛应用于影视动画、游戏设计和建筑可视化等领域。软件支持 Cycles 物理渲染器与 Eevee 实时渲染引擎,并提供多边形建模、骨骼绑定、物理模拟等专业工具。Blender 兼容 Windows、macOS 和 Linux 系统,安装包轻巧、运行流畅,依托活跃的全球开发者社区持续更新,是从初学者到专业创作者都值得选择的正版 3D 创作工具。















