计时函数clock()在windows及Linux下的使用
程序员文章站
2024-01-24 09:03:40
...
-
函数:
clock_t clock(void);
-
所在头文件:
<time.h>/<ctime>
-
函数说明: 返回从开始程序进程到调用
clock()
之间的CPU时钟计时单元(clock tick)数,即硬件滴答数 -
注意事项: 硬件滴答数需要换算成s或者ms,通过头文件
time.h
或者ctime
中的CLOCKS_PER_SEC
来实现,该值在windows下为1000,在标准POSIX下为1000000,即每过CLOCKS_PER_SEC
个滴答数,即为1s
值得注意的是:该方法计时精度有限,连续运行几十天后会出现较大误差,因此,在长时间运行的系统上需要采用更高精度的计时方法才行!
案例1:windows平台
#include<iostream>
#include<ctime>
using namespace std;
int main()
{
clock_t start_,end_;
start_=clock(); //程序开始计时
double i=0;
while(i<9999999)
i++;
end_=clock(); //程序结束用时
double endtime=(double)(end_-start_)/CLOCKS_PER_SEC; //硬件滴答数换算成时间
cout<<"Total time:"<< endtime * 1000 << "ms" << endl; //ms为单位
return 0;
}
案例2:ubuntu平台
#include <time.h>
#include <iostream>
using namespace std;
int main()
{
clock_t start_,end_;
start_=clock(); //程序开始计时
double i = 0;
while(i<9999999)
i++;
end_=clock(); //程序结束用时
double endtime=(double)(end_-start_)/CLOCKS_PER_SEC;
cout<<"Over time:"<< endtime * 1000<< "ms" << endl; //单位ms
return 0;
}
参考文献:
推荐阅读
-
计时函数clock()在windows及Linux下的使用
-
Linux下计时函数gettimeofday()的使用
-
Linux下常用的时间函数,及windows c获取系统时间方法
-
java在linux系统下开机启动无法使用sudo命令的原因及解决办法
-
java在linux系统下开机启动无法使用sudo命令的原因及解决办法
-
pip在Linux和windows下的安装和使用
-
NoSQL和Redis简介及Redis在Windows下的安装和使用教程
-
NoSQL和Redis简介及Redis在Windows下的安装和使用教程
-
同一个文件在windows和linux下计算md5哈希不一致的原因及解决方法
-
cygwin 在windows下使用linux命令的方法