标题:如何计算程序执行所花的时间?
只看楼主
whexyil
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2007-8-31
 问题点数:0 回复次数:2 
如何计算程序执行所花的时间?
一段代码,计算它执行所花的时间,要求精确到微秒级,应该怎么做?
      例如计算下列循环所花的时间
       int x=1,y=2;
       for(int i=0;i<100;i++)
         {
          int temp =x;
             x=y;
             y=temp;   
          }
搜索更多相关主题的帖子: 时间 
2007-12-12 15:21
静思
Rank: 3Rank: 3
来 自:沈阳
等 级:新手上路
威 望:8
帖 子:630
专家分:0
注 册:2006-2-28
得分:0 
下面是一段测试程序:
#include<time.h>
#include<stdio.h>
#include<stdlib.h>
int   main(   void   )   
{  
        long         j   =   10000000L;   
        int x=1,y=2
        clock_t   start,   finish;   
        double     duration;   
        /*   测量一个事件持续的时间*/   
        printf(   "Time   to   do   %ld   empty   loops   is   ");   
        start   =   clock();   
         for(int i=0;i<j;i++)
         {
          int temp =x;
             x=y;
             y=temp;   
          }
        finish   =   clock();   
        duration   =   (double)(finish   -   start)   /   CLOCKS_PER_SEC;   
        printf(   "%f   seconds\n",   duration   );   
        system("pause");
      return 0;
  }  
在当今CPU主频比较高的情况下,觉得楼主设置的循环次数较低
在标准C/C++中,最小的计时单位是一毫秒。

精确到毫秒的话不妨用windows.h   中   的   GetTickCount函数,关于这个函数的介绍楼主可以参考有关资料

英者自知,雄者自胜
2007-12-12 22:10
whexyil
Rank: 1
等 级:新手上路
帖 子:13
专家分:0
注 册:2007-8-31
得分:0 
回复 2# 的帖子
嗯,谢谢了!我再去找找相关的资料!
2007-12-13 11:55



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-192071-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.264616 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved