zoukankan      html  css  js  c++  java
  • 计算代码段的执行时间

    计算代码段的执行时间,这段代码用得太多了。决定将其封装成两个宏,方便以后使用。

    代码非常easy,就不解释了。

    #include <stdio.h>
    #include <sys/time.h>
    
    //计时器開始,
    //使用时,要将要计时的代码段放入TIMER_START和TIMER_STOP之间。详情请看測试样例
    //增加do{ }while(0)是为了尽量降低命令冲突
    #define TIMER_START() 
        do  
        {   
            struct timeval timerout_start, timerout_end, timerout_spend;   
            gettimeofday(&timerout_start, NULL);
    
    //计时器结束。将參数res设为代码段的耗时,单位是秒
    #define TIMER_STOP(res) 
            gettimeofday(&timerout_end, NULL);   
            timersub(&timerout_end, &timerout_start, &timerout_spend); 
            res = timerout_spend.tv_sec + (timerout_spend.tv_usec / 1.0e6);   
        } while (0);
    
    //測试样例
    int main()
    {
        double ddd;
        TIMER_START();
        sleep(1);
        TIMER_STOP(ddd);
        printf("speed time: %lfs
    ", ddd);
    
        TIMER_START();
        sleep(3);
        TIMER_STOP(ddd);
        printf("speed time: %lfs
    ", ddd);
    
        return 0;
    }
    


  • 相关阅读:
    逻辑回归
    异常
    内部类
    接口
    多态
    final关键字(最终的)
    不能被继承的父类成员
    对象初始化的过程
    方法重写
    abstract关键字
  • 原文地址:https://www.cnblogs.com/bhlsheji/p/5068856.html
Copyright © 2011-2022 走看看