你好,我是Linux和C编程新手,所以这可能是一个愚蠢的问题,但我找不到答案。
我正在写一个家庭作业,他们希望我在程序结束时使用time()函数打印执行时间,所以当我在程序中使用该函数时,我得到消息segmentation fault (core dumped),当我删除它时,程序会继续工作。
然后我在下面的代码中创建了一个测试文件:

#include <stdio.h>

int main()
{
    time();
    return 0;
}

我收到了同样的错误信息。
也尝试过:
#include <stdio.h>

int main()
{
    time(NULL);
    return 0;
}

以及
#include <stdio.h>
#include <time.h>

int main()
{
    time_t t;

    time(&t);
    return 0;
}

同样的错误。
我做错了什么?
谢谢

最佳答案

在前两个例子中,您忘记了包括time.h,这是这些例子中分段错误的原因。如果您使用的是gcc,请尝试使用-wall编译(这将打开所有警告)。您应该得到一个警告,指示函数“time”的隐式声明—换句话说,您忘记包括time.h。
不过,你最后的例子对我来说很好。但是,如果您一直遇到分段错误,请尝试使用gdb进行调试。

关于c - 使用时间功能时出现段错误(核心转储)错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/20939415/

10-16 20:30