当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


C++ clock()用法及代码示例


C++ 中的clock() 函数返回程序消耗的近似处理器时间。

为了计算处理器时间,使用对clock() 的两次不同调用返回的值之间的差异,一个在程序开始时,另一个在程序结束时。要将值转换为秒,需要除以宏CLOCKS_PER_SEC。

clock() 时间可能会比实际的挂钟快或慢。这取决于操作系统如何为进程分配资源。

如果处理器被其他进程共享,clock() 时间可能会比挂钟的时间提前。而如果当前进程在多线程系统中执行,clock() 时间可能会比挂钟快。

clock()原型

clock_t clock();

它在<ctime> 头文件中定义。

参数:

  • None

返回:

  • 成功后,clock() 函数返回程序到现在为止使用的处理器时间。
  • 失败时,它返回 -1 被强制转换为类型 clock_t

示例:clock() 函数的工作原理

#include <iostream>
#include <ctime>
#include <cmath>
using namespace std;

int main ()
{
	float x,y;
	clock_t time_req;

	// Using pow function
	time_req = clock();
	for(int i=0; i<100000; i++)
	{
		y = log(pow(i,5));
	}
	time_req = clock() - time_req;
	cout << "Using pow function, it took " << (float)time_req/CLOCKS_PER_SEC << " seconds" << endl;
	
	// Without pow function
	time_req = clock();
	for(int i=0; i<100000; i++)
	{
		y = log(i*i*i*i*i);
	}
	time_req = clock()- time_req;
	cout << "Without using pow function, it took " << (float)time_req/CLOCKS_PER_SEC << " seconds" << endl;

	return 0;
}

运行程序时,输出将是:

Using pow function, it took 0.014743 seconds

Without using pow function, it took 0.001357 seconds

相关用法


注:本文由纯净天空筛选整理自 C++ clock()。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。