linux中如何用gdb调试C程序

avatar
作者
猴君
阅读量:4

在Linux中使用gdb调试C程序的步骤如下:

  1. 编译程序时添加调试信息。使用gcc编译时,添加 -g 参数,例如:gcc -g program.c -o program

  2. 启动gdb。在终端中输入 gdb program,其中 program 是你要调试的程序的可执行文件。

  3. 设置断点。可以使用 break 命令设置断点。例如,break mainmain 函数的第一行设置断点,或者使用 break filename:line_number 在指定行设置断点。

  4. 运行程序。使用 run 命令运行程序。

  5. 当程序停止在断点处时,可以使用 print 命令打印变量的值,使用 step 命令逐行执行代码,使用 continue 命令继续执行到下一个断点。

  6. 当程序发生崩溃或者遇到异常时,gdb会自动停止。此时可以使用 backtrace 命令查看函数调用栈,使用 frame 命令切换到不同的栈帧,使用 print 命令打印变量的值。

  7. 在调试过程中,还可以使用其他命令如 next(逐过程执行)、finish(执行完当前函数并停在调用它的地方)、watch(监视变量)、display(每次停下来都显示变量的值)等。

  8. 结束调试,输入 quit 命令退出gdb。

这些是gdb的基本用法,你可以参考gdb的文档或者教程了解更多高级用法。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!