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)
}
相关推荐
科技苑1 小时前
C++ CAS与ABA问题详解,无锁编程的经典陷阱怎么解决?
c++·人工智能
BaiPeter5 小时前
ZPL文件预览
开发语言·c++
悠仁さん8 小时前
【C++】哈希表
c++·算法·散列表
Severus_black10 小时前
【C++初阶】list使用及相关实现,思路顺滑流畅!
c语言·数据结构·c++·stl·list
敲上瘾12 小时前
Qt Widgets入门:项目模板解析与Hello World
开发语言·数据库·c++·qt·ui·qt6.3
旖旎夜光13 小时前
【C++ 基础入门】C++ 多态(中):虚函数表、多态原理与动静绑定
开发语言·c++·笔记·学习
旖旎夜光14 小时前
【C++ 基础入门】C++多态(下):单/多继承虚表、多态补充与 21 道高频题
开发语言·c++·笔记·学习
apcipot_rain1 天前
C++转Java日记(03)
java·开发语言·c++
布莱克6051 天前
C++ 中 map 的 insert 与 emplace:key 已存在时会覆盖吗?
开发语言·数据结构·c++·算法·map
xys_6781 天前
深挖C++:类和对象(中)
开发语言·c++