天天向上
新手上路
新手上路
  • 注册日期2013-11-23
  • 发帖数13
  • QQ373526679
  • 火币54枚
  • 粉丝0
  • 关注0
  • 最爱沙发
阅读:4966回复:3

[C++技术]三种计算代码执行时间的方法。

楼主#
更多 发布于:2013-11-25 15:45
    之前在论坛有一篇关于计算代码执行时间的帖子,不够详尽,所以自己总结了一下常用的三种方法,现归纳如下,希望能帮到大家
   第一种:
   使用time(NULL),只能精确到秒级别,误差太大,基本上用不成,不推荐。
   第二种:
   使用clock(),精确到毫秒级别,且使用起来操作简单,推荐。
  第三种:
  使用cpu时间段计时,具体方法QueryPerformanceFrequency(large_intger*)  和 QuerPerformanceCounter(large_intger); 可精确到微秒级别,但缺点是操作起来稍显复杂,推荐。
    前两种方法的使用需要包含头文件<time.h>,第三种方法需要包含头文件<windows.h>
示例代码如下:
  下面是一段 统计1到100000以内素数个数的代码, 用三种计时方法来计算其执行时间。
    (为了演示,我在以下代码中同时使用了三种方法,实际操作中只需一种足矣)
为什么不能粘贴呀,蛋疼,只能贴图了,不想再敲一次了。

图片:1.jpg

图片:2.jpg

图片:3.jpg




喜欢0 评分0
Do something today that your future self will thank you for.
天天向上
新手上路
新手上路
  • 注册日期2013-11-23
  • 发帖数13
  • QQ373526679
  • 火币54枚
  • 粉丝0
  • 关注0
  • 最爱沙发
沙发#
发布于:2013-11-25 15:48
哎呀,为了偷懒,三种方法写一块了,太乱了,大家见谅,知道这意思就行,回头自己用一下就ok了。

Do something today that your future self will thank you for.
回复(0) 喜欢(0)     评分
灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
板凳#
发布于:2013-11-25 15:55

回复(0) 喜欢(0)     评分
694012511
精灵王
精灵王
  • 注册日期2013-04-17
  • 发帖数129
  • QQ694012511
  • 火币1644枚
  • 粉丝7
  • 关注9
  • 忠实会员
  • 最爱沙发
地板#
发布于:2013-12-01 17:17

回复(0) 喜欢(0)     评分
游客

返回顶部