五种不同方法——获取一个函数的运行时间

借鉴原文地址:http://www.sohu.com/a/135476597_498330

方法一:运用time() 函数

time()是指返回自 Unix 纪元(January 1 1970 00:00:00 GMT)起的当前时间的秒数的函数,主要用来获取当前的系统时间,返回的结果是一个time_t类型。

//需要包含的头文件
<time.h>
//函数原型
time_t time( time_t *timer );

测试函数代码:

#include<stdio.h>
#include<time.h>
void test()
{
	int sum = 0;
	int i = 0;
	for (i = 0; i < 1000; ++i)
	{
		sum += i;
	}
}
int main()
{
	time_t start;
	time_t end;
	time(&start);
	test();
	time(&end);

	printf("%ld\n", end-start);
	return 0;
}

测试结果:


方法二:运用timeGetTime()函数

timeGetTime():函数以毫秒计的系统时间。该时间为从系统开启算起所经过的时间,即返回函数得到的定时器的当前值。返回值的单位为1ms。

方法三:运用QueryPerformanceCounter()函数

函数QueryPerformanceCounter()用于得到高精度计时器的值。

方法四:运用GetTickCount()函数

GetTickCount返回(retrieve)从操作系统启动所经过(elapsed)的毫秒数,它的返回值是DWORD。

方法五:运用gettimeofday()函数

gettimeofday是计算机函数,使用C语言编写程序需要获得当前精确时间(1970年1月1日到现在的时间),或者为执行计时,可以使用gettimeofday()函数。

//函数需要包含的头文件
#include <sys/time.h>
//函数原型
int gettimeofday(struct timeval*tv, struct timezone *tz);


猜你喜欢

转载自blog.csdn.net/xiayzn/article/details/80668182