C++ windows如何计算程序运行时间
时间: 2023-11-07 10:05:03 浏览: 44
可以使用 Windows API 中的 QueryPerformanceCounter 函数来计算程序运行时间。这个函数可以获取高精度计数器的值,用来计算时间间隔。
具体步骤如下:
1. 在程序开始时,调用 QueryPerformanceCounter 函数获取计数器的初始值。
```c++
LARGE_INTEGER start, end, freq;
QueryPerformanceCounter(&start);
```
2. 执行需要计时的程序。
3. 在程序结束时,再次调用 QueryPerformanceCounter 函数获取计数器的结束值。
```c++
QueryPerformanceCounter(&end);
```
4. 调用 QueryPerformanceFrequency 函数获取计数器的频率。
```c++
QueryPerformanceFrequency(&freq);
```
5. 计算程序运行时间,单位为秒。
```c++
double time = (double)(end.QuadPart - start.QuadPart) / (double)freq.QuadPart;
```
完整代码示例:
```c++
#include <windows.h>
#include <iostream>
int main() {
LARGE_INTEGER start, end, freq;
QueryPerformanceCounter(&start);
// 执行需要计时的程序
for (int i = 0; i < 100000000; i++) {
// do something
}
QueryPerformanceCounter(&end);
QueryPerformanceFrequency(&freq);
double time = (double)(end.QuadPart - start.QuadPart) / (double)freq.QuadPart;
std::cout << "程序运行时间为:" << time << "秒" << std::endl;
return 0;
}
```