我会生气吗?我在 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;
}
这打印
Clock: 0.002880
Clock: 0.002968
Clock: 0.003019
它显然在 sleep(1)
行等待了一秒钟,但输出显然是错误的。
如果这不起作用,是否有可移植的 C 替代方案?
最佳答案
我是个傻子。 clock()
返回使用的处理器时间。
关于c - time.h clock() 在 OS X 上坏了吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13510758/