c++统计函数耗时

原型:BOOL QueryPerformanceFrequency(LARGE_INTEGER *lpFrequency);

作用:该函数是操作系统的性能统计分辨率,也就是每秒钟统计多少次的意思,返回硬件支持的高精度计数器的频率。返回非零,硬件支持高精度计数器,返回零,硬件不支持,读取失败。

QueryPerformanceCounter 是系统性能统计计数器,表示统计了多少次,除以QueryPerformanceFrequency,得到系统运行时间(秒数)。

cpp 复制代码
#include "stdafx.h"
#include <stdio.h>
#include <Windows.h>

int main()
{
    LARGE_INTEGER t1, t2, tc;
    QueryPerformanceFrequency(&tc);
    QueryPerformanceCounter(&t1);
    my_fun(); // 测试该函数耗时
    QueryPerformanceCounter(&t2);
    double time = (double)(t2.QuadPart - t1.QuadPart) / (double)tc.QuadPart;
    cout << "full_time = " << time << endl;  //输出时间(单位:s)
}
相关推荐
(Charon)1 小时前
【C++面试】RAII到底是什么:从资源管理理解C++对象生命周期
c++·算法·面试
无名猿1 小时前
成员初始化列表与初始化顺序陷阱:按声明顺序,不是书写顺序
c++·现代c++·语法基础
91刘仁德1 小时前
传输层协议深度拆解:端口寻址、UDP 报文与 TCP 可靠性机制全解析
linux·网络·c++·网络协议·tcp/ip·udp·c
Liuchang09111 小时前
洛谷 P2670 [NOIP 2015 普及组] 扫雷游戏
c++·算法·游戏
顶点多余2 小时前
C/C++常见面试题
开发语言·c++
HugoStudio_SWAN2 小时前
洛谷 B4575 [GESP202609 二级] 直角三角形——临场定义理解与边界质疑
c++·学习·程序人生·算法
(Charon)2 小时前
【C++面试】右值引用与移动语义:std::move到底做了什么
开发语言·c++
红豆诗人2 小时前
C++二叉搜索树:查找、插入和删除为什么这样写
数据结构·c++·算法
夏天的清晨2 小时前
C++入门学习
开发语言·c++·学习
汉克老师2 小时前
GESP2026年9月认证C++七级( 第二部分判断题(1~10题)精讲
c++·gesp·小学生·学c++编程