C++计时器:毫秒级和微秒级

1、毫秒级

  1. 使用GetTickCount()获取系统启动所经过的毫秒数
#include<iostream>  
using namespace std;    

int main(){
    DWORD start= ::GetTickCount(); //获取毫秒级数目  
    Sleep(1000);  
    cout << ::GetTickCount() - start<< endl;  
    system("pause");  
}

   2. 使用clock()

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

using namespace std;

int main(){
    clock_t start;
    start = clock();
    Sleep(1000);
    cout<<clock()-start<<" ms"<<endl;
    system("pause");
}

 

2、微秒级

  1. 先用QueryPerformanceFrequency()获取时钟周期再调用QueryPerformanceCounter()获取CPU从开机以来执行的时钟周期数
#include <stdio.h>  
#include <math.h>  
#include <windows.h>  

using namespace std;

void main()
{
    LARGE_INTEGER cpuFreq;
    LARGE_INTEGER startTime;
    LARGE_INTEGER endTime;
    double rumTime=0.0;
    QueryPerformanceFrequency(&cpuFreq);
    QueryPerformanceCounter(&startTime);
    Sleep(1000);
    QueryPerformanceCounter(&endTime);
    rumTime = (((endTime.QuadPart - startTime.QuadPart) * 1000.0f) / cpuFreq.QuadPart);
    cout << rumtTime << " ms" << endl;
}

 

转载于:https://www.cnblogs.com/chensheng-zhou/p/6323174.html

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值