c++

c++中queryperformancecounter怎么用

小亿
306
2024-01-05 13:21:36
栏目: 编程语言
C++开发者专用服务器,限时0元免费领! 查看>>

在C++中使用QueryPerformanceCounter函数来测量时间和性能,需要进行以下步骤:

  1. 包含Windows.h头文件,该头文件包含QueryPerformanceCounter函数的声明。
#include <Windows.h>
  1. 声明一个LARGE_INTEGER类型的变量来存储计数器的值。
LARGE_INTEGER start, end, frequency;
  1. 调用QueryPerformanceFrequency函数来获取计数器的频率,该频率表示每秒计数器增加的次数。
QueryPerformanceFrequency(&frequency);
  1. 调用QueryPerformanceCounter函数来获取计数器的当前值。
QueryPerformanceCounter(&start);
  1. 执行需要计时的代码。

  2. 调用QueryPerformanceCounter函数来获取计数器的当前值。

QueryPerformanceCounter(&end);
  1. 计算时间间隔,并转换为秒数。
double elapsed = (end.QuadPart - start.QuadPart) / static_cast<double>(frequency.QuadPart);

完整示例代码如下:

#include <iostream>
#include <Windows.h>

int main() {
    LARGE_INTEGER start, end, frequency;
    QueryPerformanceFrequency(&frequency);
    QueryPerformanceCounter(&start);

    // 执行需要计时的代码
    for (int i = 0; i < 1000000; ++i) {
        // Do something
    }

    QueryPerformanceCounter(&end);
    double elapsed = (end.QuadPart - start.QuadPart) / static_cast<double>(frequency.QuadPart);

    std::cout << "Elapsed time: " << elapsed << " seconds" << std::endl;

    return 0;
}

注意:

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

相关推荐:c++中queryperformancecounter报错怎么办

0
看了该问题的人还看了