开发中常用的几个时间函数

    在平时的程序开发尤其是游戏等多媒体的程序开发中,要经常用到时间函数用来衡量程序的运行时间、算法的效率或者在某个时间进行特定的操作等。操作系统和编译器为我们提供了很多时间函数,这些函数的精度也各不相同,所以他们的用途也不尽相同。下面简单总结一下平时常用的几个时间函数。
  • C语言下的Time函数:获取当前时间
    • 使用:
                            time_t  time;
                            time(&time);
    • 精度:秒级别
  •  CTime的GetCurrentTime:获取当前系统时间
    • 使用:
                            CTime t = CTime::GetCurrentTime();
    • 精度:秒级别。可以获得当前系统的。可以活得当前系统的年、月、日、星期、时、分和秒
  • Windows下的GetTickCount():用于判断两断时间的间隔
    • 使用:
                            DWORD start = GetTickCount();
                            ……
                            ……
                            DWORD end = GetTickCount();
                            DWORD last = end - start;
    • 精度:毫秒级
  • Windows下timeGetTime:返回系统从开机启动到现在的时间
    • 使用:同GetTickCount()使用方法一样
    • 精度:毫秒级
  • 高精度时控函数QueryPerformanceFrequency,QueryPerformanceCounter
    • 使用:
                           LARGE_INTEGER m_nFreq;
                          LARGE_INTEGER m_nBeginTime;
                          LARGE_INTEGER m_nEndTime;
                          QueryPerformanceFrequency(&m_nFreq); // 获取时钟周期
                          QueryPerformanceCounter(&m_nBeginTime); // 获取时钟计数
                          Sleep(100);
                          QueryPerformanceCounter(&m_nEndTime);
                         cout << (m_nEndTime.QuadPart-m_nBeginTime.QuadPart)*1000/m_nFreq.QuadPart << endl;
    • 精度:毫秒级(最精确)
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值