c++中记录程序运行时间的函数
在C++的库函数中,我们可以使用clock()来计算程序的运行时间,主要使用一下三个函数类型及函数:
1、clock_t:数据类型,其实,当你打开time.h就知道了,就是个long型,用来记录一段时间内的clocks数,即CPU的运行单元时间;
2、clock():返回类型clock_t,返回的是从程序开始,到你调用clock()函数这段时间的clocks;
3、CLOCKS_PER_SEC:它用来表示一秒钟会有多少个时钟计时单元,即:
#define CLOCKS_PER_SEC ((clock_t)1000)
可以看到每过千分之一秒(1毫秒),调用clock()函数返回的值就加1。
下面举个例子,你可以使用公式clock()/CLOCKS_PER_SEC来计算一个进程自身的运行时间:
我们若想计算程序的运行时间,则只要根据程序的入口点和出口点出都计算clocks,再算差就可以了,都是在main()中进行操作,如下:
int main() {
clock_t start, end;
start = clock();
.......//要记录运行时间的程序段;
end = clock();
cout<<"Run time: "<<(double)(end - start) / CLOCKS_PER_SEC<<"S"<<endl;
//要记录分钟的话,上面的程序改为(double)(end - start) / CLOCKS_PER_SEC/60即可;
return 0;
}