我得到了一个我以前见过的段错误,但不知道如何解决。它告诉我strcpy有问题,但我不确定它意味着什么。任何人都可以向我解释这个消息以及我需要做些什么来解决它?
Program received signal SIGSEGV, Segmentation fault.
__strcpy_sse2 () at ../sysdeps/x86_64/multiarch/../strcpy.S:60
60 ../sysdeps/x86_64/multiarch/../strcpy.S: No such file or directory.
答案 0 :(得分:3)
使用-g选项编译代码,
gcc -g yourcode.c
如果程序崩溃,这将生成核心转储(您可能还需要激活核心转储生成(例如ulimit -c unlimited
)
现在您可以使用gdb来跟踪问题:
gdb -c core yourexecutable
在调试器中使用bt
(backtrace)来查看堆栈跟踪
答案 1 :(得分:0)
如果可以,请使用调试器,如果可以,请使用分析器。如果你不能做任何花时间在代码中搜索strcpy(这也可能在DLL中)并检查它是否正确使用。