C++实现计算程序运行时间

来源:百度知道 编辑:UC知道 时间:2024/09/20 23:19:19
我用VC6.0编写的一个C++程序,现在要测出我的程序运行时间,不要精确到秒,要精确到毫秒或微秒,最好就是一个很小的程序都可以测出来,怕没人回答,暂时不给分,答出来的追加分数,绝不食言!

用高精度计时器
#include <iostream>
#include <windows.h>
using namespace std ;

int main(void)
{
LARGE_INTEGER BegainTime ;
LARGE_INTEGER EndTime ;
LARGE_INTEGER Frequency ;
QueryPerformanceFrequency(&Frequency);
QueryPerformanceCounter(&BegainTime) ;
//要测试的代码放在这里
QueryPerformanceCounter(&EndTime) ;
cout << ( EndTime.QuadPart - BegainTime.QuadPart )*1000 / Frequency.QuadPart ;

system("pause") ;
return 0 ;
}

int t1,t2;
SYSTEMTIME ctime;
GetLocalTime(&ctime);
t1=ctime.wMilliseconds;
for (int j=0;j<10000;j++)
for (int i=0;i<10000;i++)
i=i;
GetLocalTime(&ctime);
t2=ctime.wMilliseconds;
printf("%d\n",t2-t1);

毫秒级的

/* CLOCK.C: This example prompts for how long
* the program is to run and then continuously
* displays the elapsed time for that period.
*/