QueryPerformanceCounter 给我一段代码示例
时间: 2024-01-09 17:06:02 浏览: 72
一个代码例子
当然,这是一个使用 QueryPerformanceCounter 函数获取当前时间戳的示例代码:
```c++
#include <iostream>
#include <windows.h>
int main() {
LARGE_INTEGER frequency;
LARGE_INTEGER startCounter, endCounter;
if (!QueryPerformanceFrequency(&frequency)) {
std::cerr << "Failed to get the performance frequency!" << std::endl;
return 1;
}
QueryPerformanceCounter(&startCounter);
// Your code to measure goes here...
QueryPerformanceCounter(&endCounter);
double elapsedTime = static_cast<double>(endCounter.QuadPart - startCounter.QuadPart) / frequency.QuadPart;
std::cout << "Elapsed time: " << elapsedTime << " seconds" << std::endl;
return 0;
}
```
在上述示例中,我们首先获取计时器的频率通过 `QueryPerformanceFrequency` 函数,并将其存储在 `frequency` 变量中。然后,我们调用 `QueryPerformanceCounter` 函数两次,一次在要开始计时的位置,另一次在结束计时的位置。最后,我们计算出经过的时间并输出结果。
请注意,该示例代码假设你正在使用 Windows 操作系统。如果你在其他操作系统上运行此代码,则需要进行适当的修改。
阅读全文