小编典典

确定导致分段错误的代码行?

all

如何确定导致分段错误的代码错误在哪里?

我的编译器 ( gcc) 可以显示程序中故障的位置吗?


阅读 70

收藏
2022-06-24

共1个答案

小编典典

GCC 不能这样做,但 GDB调试器肯定可以。-g使用开关编译您的程序,如下所示:

gcc program.c -g

然后使用 gdb:

$ gdb ./a.out
(gdb) run
<segfault happens here>
(gdb) backtrace
<offending code is shown here>

是一个很好的教程,可以帮助您开始使用 GDB。

段错误发生的位置通常只是关于“导致错误”在代码中的位置的线索。给定位置不一定是问题所在。

2022-06-24