平台:VS2010
#include<stdio.h>
#include <Windows.h>
int main() {
int a[10002];
int i = 0;
double run_time;
LARGE_INTEGER time_start; //开始时间
LARGE_INTEGER time_over; //结束时间
double dqFreq; //计时器频率
LARGE_INTEGER f; //计时器频率
QueryPerformanceFrequency(&f);
dqFreq=(double)f.QuadPart;
QueryPerformanceCounter(&time_start); //计时开始
for( i = 1; i <= 10000; i++)a[i]=i; //要计时的程序
QueryPerformanceCounter(&time_over); //计时结束
run_time=1000000*(time_over.QuadPart-time_start.QuadPart)/dqFreq;
//乘以1000000把单位由秒化为微秒,精度为1000 000/(cpu主频)微秒
printf("\nrun_time:%fus\n",run_time);
return 0;
}
原文链接:https://blog.youkuaiyun.com/Bamboo_shui/article/details/78757281
由于原文中代码有瑕疵无法运行,故进行调试之后运行成功。修改部分如下:
//w小写变大写
#include <windows.h>
==>
#include <Windows.h>
//删除前端下划线
_LARGE_INTEGER time_start; //开始时间
_LARGE_INTEGER time_over; //结束时间
==>
LARGE_INTEGER time_start; //开始时间
LARGE_INTEGER time_over; //结束时间