VC中取得毫秒级、微妙级的时间

方法一:

1 DWORD startTime = GetTickCount();
2 // do something
3 DWORD totalTime = GetTickCount() - startTime;

感觉不是很准确

 

方法二:

如下的代码可以取得更为精确的时间值:

 1 // 取得时钟频率
 2 LARGE_INTEGER  litmp ;
 3 QueryPerformanceFrequency(&litmp);
 4     
 5 LARGE_INTEGER  start;
 6 QueryPerformanceCounter(&start) ; 
 7 
 8 //do something
 9 
10 LARGE_INTEGER  end;
11 QueryPerformanceCounter(&end) ; 
12
13 double dTotalTime = (double)(end.QuadPart-start.QuadPart) / (double)litmp.QuadPart;    //秒

感觉较为准确

你可能感兴趣的:(VC中取得毫秒级、微妙级的时间)