c++ - 段错误 : "...no such file or directory"

标签 c++ segmentation-fault cstring

我遇到了奇怪的段错误,它似乎来自某个不在我的程序中的地方……无论如何都没有明确说明。我在两个数组上调用“strcmp”...两个数组都存储在相同类型的结构中。我得到一个点符号和一个通过“->”取消引用:

int name = strcmp(one.name, two->name);

它编译得很好,但是当我运行它时,我遇到了段错误。我试过用 GDB 跟踪它,但是当我在我认为它应该发生的地方之前放置断点时,它无论如何都会出现故障。我得到:

Program received signal SIGSEGV, Segmentation fault.
__strcmp_ia32 () at ../sysdeps/i386/i686/multiarch/../strcmp.S:40
40  ../sysdeps/i386/i686/multiarch/../strcmp.S: No such file or directory.
    in ../sysdeps/i386/i686/multiarch/../strcmp.S

卧槽。建议?谢谢!

最佳答案

我的建议:用-g编译它并通过valgrind运行它。

关于c++ - 段错误 : "...no such file or directory",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10629229/

相关文章:

c++ - 'Scanner' 没有命名 g++ 中的类型错误

c++ - 无法从匿名管道读取

c++ - 在哪里可以找到所有数学函数的描述,比如 floorf 和其他函数?

c - 我在 C 语言中遇到用于合并排序的动态分配数组的段错误(核心转储)错误?

c - 使用有效指针的 Memcpy 段错误

c++ - 如何通过 gdb 调试 nodejs 插件

C++:如果发生段错误或类似的事情,有没有办法杀死单个线程但保持应用程序运行?

c++ - 两个项目之间的 MFC CString 链接器错误

c - C 中的 scanf 和 char 指针——意外输出

c# - 将 CString 从 C++ 编码(marshal)到 C# 时如何(如果需要)释放动态内存?