在Windows上,有没有比clock()
函数更好的时间度量函数或方法了?我的操作很短,当我尝试clock()
或gettickcount()
时,它说花了0.0秒。我需要一种以毫秒或纳秒为单位进行测量的方法。
最佳答案
您可以使用QueryPerformanceCounter
和QueryPerformanceFrequency
:
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
int main(void)
{
LARGE_INTEGER frequency;
LARGE_INTEGER start;
LARGE_INTEGER end;
double interval;
QueryPerformanceFrequency(&frequency);
QueryPerformanceCounter(&start);
// code to be measured
QueryPerformanceCounter(&end);
interval = (double) (end.QuadPart - start.QuadPart) / frequency.QuadPart;
printf("%f\n", interval);
return 0;
}
关于c - 在C中测量执行时间(在Windows上),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15720542/