Sna*_*gon 5 c linux program-entry-point segmentation-fault
我在 Linux 上有一个很长的 c 程序,在 main 返回后出现分段错误。这是一个很长的程序,所以我无法发布它。那么你能帮我看看什么会犯这样的错误吗?
谢谢。
哇,这些答案来得真快。谢谢你们。我想我已经解决了,我忘记了分配一个字符串并将其用作缓冲区。现在我已经分配了它,它不会向我发出分段错误的信号。
再次感谢大家。
使用 GDB 并在 SIGSEGV 信号上打印堆栈跟踪。那么至少将其发布在这里,以便我们可以提供更多帮助。
假设您编译了:
$ gcc -g prog.c -o prog
Run Code Online (Sandbox Code Playgroud)
然后在GDB下运行:
$ gdb ./prog
gdb> r
Run Code Online (Sandbox Code Playgroud)
当您收到SIGSEGV
信号(分段错误)时,请执行以下操作:
gdb> bt
Run Code Online (Sandbox Code Playgroud)
然后查看堆栈跟踪上的内容以了解导致分段错误的原因。