您的位置:首页 >如何使用GCC调试程序
发布于2026-05-06 阅读(0)
扫一扫,手机访问

调试,可以说是程序员从“程序能跑”到“程序跑对”的必经之路。而GCC配合GDB,正是这条路上的经典组合。下面,我们就来梳理一下这套工具链的标准操作流程。
想让调试器看懂你的代码,首先得在编译时告诉编译器:“把调试符号留好”。这就要用到 -g 选项。它会将变量名、源代码行号等关键信息嵌入到生成的可执行文件中,这是后续所有调试工作的基础。
gcc -g -o myprogram myprogram.c
程序编译好后,就可以请出主角——GNU调试器(GDB)了。在终端里,用这个简单的命令就能把它唤出来,并加载你的程序。
gdb myprogram
调试的核心是控制。在GDB中,使用 break 命令(简写 b)设置断点,程序运行到那里就会自动暂停,方便你观察。断点可以设在函数入口,也可以精确到某一行代码。
break main
# 或者
break myprogram.c:42
准备工作就绪,输入 run 命令(简写 r),程序便会开始执行。一旦遇到你设置的断点,它就会乖乖停下来,等待你的下一步指令。
run
程序暂停后,才是真正开始“破案”的时候。GDB提供了一组强大的侦查命令:
print(p):查看某个变量的当前值,这是最常用的操作。backtrace(bt):展示函数调用栈,帮你理清“程序是怎么走到这一步的”。list(l):显示当前位置附近的源代码,快速定位上下文。next(n):单步执行,但遇到函数调用时会直接跳过其内部细节。step(s):也是单步执行,但会进入被调用的函数内部。continue(c):让程序继续自由奔跑,直到撞上下一个断点。调试不只是观察,有时还需要主动干预来测试不同场景。除了用 print 查看,你还能直接用 set 命令在运行时修改变量的值,这能省去反复修改代码和重新编译的麻烦。
print variable_name
set variable variable_name = new_value
调查完毕,输入 quit 命令即可优雅地离开GDB环境。
quit
以上,就是使用GCC和GDB进行调试的一套基础但完整的操作。必须指出的是,GDB的功能远不止于此,它还有条件断点、观察点、多线程调试等众多高级特性。如果想深入挖掘,随时可以查阅它的手册(在终端运行 man gdb),那里藏着成为调试高手的全部秘籍。
下一篇:Yum如何删除不再需要的软件包
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8