在OS X上打破time.h clock()?

时间:2012-11-22 10:34:31

标签: c macos clock darwin time.h

我生气了吗?我在x86_64上运行它。

#include <stdio.h>
#include <time.h>
#include <unistd.h>

int main(int argc, char *argv[])
{
    printf("Clock: %f\n", clock() / (double)CLOCKS_PER_SEC);
    sleep(1);
    printf("Clock: %f\n", clock() / (double)CLOCKS_PER_SEC);
    sleep(1);
    printf("Clock: %f\n", clock() / (double)CLOCKS_PER_SEC);
    return 0;
}

打印

  

时钟:0.002880
  时钟:0.002968
  时钟:0.003019

显然在sleep(1)行等待一秒,但输出显然是错误的。

如果这不起作用,是否有便携式C替代品?

2 个答案:

答案 0 :(得分:4)

我是个白痴。 clock()返回处理器时间

答案 1 :(得分:0)

您可以声明变量 time_t t1,t2; t1 = time(NULL); sleep(1); t2 = time(NULL); 您可以调试和查看t1和t2的值。 我想你可以参考http://www.cplusplus.com/reference/clibrary/ctime/time/