[C.C++] C++计时函数

300 0
Honkers 2025-5-10 18:26:25 | 显示全部楼层 |阅读模式

windows下可以引用 #include
在linux下不能使用
我们可以用#include linux和windows下都可以用
计时开始

  1. //time start
  2. clock_t start,stop;
  3. start = clock();
复制代码

计时结束

  1. //time end
  2. stop = clock();
  3. double endtime=(double)(stop-start)/CLOCKS_PER_SEC;
  4. std::cout << "time: "<<endtime <<"s" <<std::endl;
复制代码

参考这篇博客:
https://www.cnblogs.com/shiney/archive/2011/06/30/2095118.html

C/C++中的计时函数是clock(),而与其相关的数据类型是clock_t。
在MSDN中,查得对clock函数定义如下: clock_t clock( void );
这个函数返回从“开启这个程序进程” 到 “程序中调用clock()函数” 时之间的CPU时钟计时单元(clock tick)数,在MSDN中称之为挂钟时间(wal-clock)。其中clock_t是用来保存时间的数据类型,在time.h文件中,我们可以找到对它的定义:

  1. #ifndef _CLOCK_T_DEFINED
  2. typedef long clock_t;
  3. #define _CLOCK_T_DEFINED
  4. #endif
复制代码

很明显,clock_t是一个长整形数。
在time.h文件中,还定义了一个常量CLOCKS_PER_SEC,它用来表示一秒钟会有多少个时钟计时单元,其定义如下:
#define CLOCKS_PER_SEC ((clock_t)1000)
可以看到每过千分之一秒(1毫秒),调用clock()函数返回的值就加1

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Honkers

荣誉红客

关注
  • 4012
    主题
  • 36
    粉丝
  • 0
    关注
这家伙很懒,什么都没留下!

中国红客联盟公众号

联系站长QQ:5520533

admin@chnhonker.com
Copyright © 2001-2025 Discuz Team. Powered by Discuz! X3.5 ( 粤ICP备13060014号 )|天天打卡 本站已运行