标准库clock函数探索

Q.linux 平台下面clock 的返回值单位是秒,还是毫秒,还是微妙?

A.微秒


man 3 clock--> 有如下描述:

    to get the number of seconds used, divide by CLOCKS_PER_SEC

    C89, C99, POSIX.1-2001.  POSIX requires that CLOCKS_PER_SEC equals 1000000

上面要表达有两个意思:

    1.把clock_t 的值转成秒,要除以CLOCKS_PER_SEC。

    2.标准C89, C99, POSIX.1-2001.  POSIX要求CLOCKS_PER_SEC 等于1000000

    x*1000000 = 1秒

    x = 微妙


Q.clock 函数有意思的地方?

A.clock 函数不会计算调用sleep 或者usleep 或类似函数的时间。

clock_t b,e;
b = clock();
sleep(1);
e = clock();
printf("time = %ld\n", e - b);

运行结果:time = 0


你可能感兴趣的:(标准库clock函数探索)