C++程序执行时间

在统计某段程序或某个算法的运行时间时,经常会用到clock()函数

 

clock()是C/C++中的计时函数,与其相关的数据类型是clock_t,头文件是time.h/ctime。

clock()函数的功能是:返回从“开启这个程序进程”到“程序中调用clock()函数”时之间的CPU时钟计时单元数(clock tick)。

在C/C++中,定义了一个常量CLOCKS_PER_SEC,它用来表示一秒钟会有多少个时钟计时单元。

clock_t是长整型 long,返回的是整形,通常要以转换成浮点数类型。

 

使用clock()统计程序运行时间时,需要注意的地方

1.clock()函数测量的是处理器的CPU时间,而不是实际的时间,当使用sleep()函数时,是不会统计sleep的时间的,即clock算出的时间比实际的时间少一些

2.clock()函数测量的是处理器的CPU时间,而不是实际的时间,当开启多线程的时候,就会发现使用clock算出的时间比实际的时间多了一些

 

#include<bits/stdc++.h>
using namespace std;

int main(){
    clock_t start,finish;
    start = clock();
    for(int i=0;i<1000;i++){
        cout<<i<<endl;
    }
    finish = clock();
    double duration = (double)(finish-start)/CLOCKS_PER_SEC;
    printf("%2.1f seconds\n",duration);
    return 0;
}

 

posted @ 2020-11-09 16:51  new-code  阅读(900)  评论(0编辑  收藏  举报