在Ubuntu上使用GCC调试程序,通常会结合GDB(GNU调试器)来进行。以下是使用GCC和GDB调试程序的基本步骤:
编译程序时添加调试信息:
使用-g
选项来编译你的程序,这样GDB才能获取到调试信息。
gcc -g -o myprogram myprogram.c
启动GDB:
在终端中输入gdb
后跟你的程序名来启动GDB。
gdb myprogram
设置断点:
在GDB中,你可以使用break
命令来设置断点。例如,如果你想在main
函数处设置断点,可以这样做:
break main
你也可以在特定的文件和行号处设置断点:
break myprogram.c:42
运行程序:
使用run
命令来启动程序。如果设置了断点,程序将在断点处暂停执行。
run
检查程序状态: 当程序在断点处暂停时,你可以使用各种GDB命令来检查程序的状态:
print
或p
:打印变量的值。backtrace
或bt
:显示当前的调用栈。list
或l
:显示当前执行点附近的源代码。next
或n
:执行下一行代码,不进入函数内部。step
或s
:执行下一行代码,如果下一行是函数调用,则进入函数。continue
或c
:继续执行程序直到下一个断点。修改变量值:
使用set
命令可以修改变量的值。
set variable myvar = 10
退出GDB:
使用quit
命令退出GDB。
quit
这些是使用GCC和GDB进行程序调试的基本步骤。GDB是一个功能强大的工具,有许多高级功能,比如条件断点、监视点、性能分析等。如果你想了解更多关于GDB的信息,可以查阅GDB的手册页(通过man gdb
命令)或者在线资源。
辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>
推荐阅读: 如何在Ubuntu中监控Node.js应用