gpt4 book ai didi

c - C语言中以毫或微秒为单位测量时间

转载 作者:行者123 更新时间:2023-12-04 11:38:30 30 4
gpt4 key购买 nike

我正在使用 Microsoft Visual Studio 2010。我想在 Windows 7 平台上用 C 语言测量以微秒为单位的时间。我该怎么做。

最佳答案

获得准确时间测量的方法是通过性能计数器。

在 Windows 中,您可以使用 QueryPerformanceCounter()QueryPerformanceFrequency():

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

编辑:这是一个简单的示例,用于测量从 0 到 1000000000 求和所需的时间:

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);

输出:

sum = 499999999500000000
Seconds = 0.659352

关于c - C语言中以毫或微秒为单位测量时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8088697/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com