2011-11-11 39 views

答えて

3

正確な時間測定を行うには、パフォーマンスカウンタを使用します。

Windowsでは、使用することができますQueryPerformanceCounter()QueryPerformanceFrequency()

http://msdn.microsoft.com/en-us/library/windows/desktop/ms644904%28v=vs.85%29.aspx

EDIT:

LARGE_INTEGER frequency; 
LARGE_INTEGER start; 
LARGE_INTEGER end; 

// Get the frequency 
QueryPerformanceFrequency(&frequency); 

// Start timer 
QueryPerformanceCounter(&start); 

// Do some work 
__int64 sum = 0; 
int c; 
for (c = 0; c < 1000000000; c++){ 
    sum += c; 
} 
printf("sum = %lld\n",sum); 


// End timer 
QueryPerformanceCounter(&end); 

// Print Difference 
double duration = (double)(end.QuadPart - start.QuadPart)/frequency.QuadPart; 
printf("Seconds = %f\n",duration); 
:ここでは1000000000から0からまとめるのに必要な時間を測定する簡単な例です。

出力:

http://www.decompile.com/cpp/faq/windows_timer_api.htm:
sum = 499999999500000000 
Seconds = 0.659352 
+0

まともなサンプルコードを参照してください – Joe

関連する問題