zoukankan      html  css  js  c++  java
  • C_clock()测试代码(循环)运行时间

    clock()   传送门(百度百科)

      clock()是C/C++中的计时函数,而与其相关的数据类型是clock_t。在MSDN中,查得对clock函数定义如下:
     
      clock_t clock(void) ;
     
      简单而言,就是该程序从启动到函数调用占用CPU的时间。这个函数返回从“开启这个程序进程”到“程序中调用clock()函数”时之间的CPU时钟计时单元(clock tick)数,在MSDN中称之为挂钟时间(wal-clock);若挂钟时间不可取,则返回-1。其中clock_t是用来保存时间的数据类型
     
      宏CLOCKS_PER_SEC适用于将计算系统时间类型转换为用户可读的秒时间,包含于头文件ctime(或time.h)中
     
    #include<stdio.h>
    #include<stdlib.h>
    #include<time.h>
    
    //测试for循环时间 
    void delay(unsigned int t)
    {
            unsigned int i,j;
            for(i=0;i<t;i++)
                for(j=0;j<t;j++)
                ;
    }
    
    int main( )
    {
    
        clock_t start, finish;
        double Text_time;
        start = clock();
        delay(1000);
        finish = clock();
        Text_time = (double)(finish-start) / CLOCKS_PER_SEC;
        printf("%lf seconds/n", Text_time);
        return 0;
    }

      100万次循环测试出0.002秒

        在测试for循环和while循环时有时会出现稍许误差,误差出现和当前系统可用CPU空闲率有关

        

    (如需转载学习,请标明出处)
  • 相关阅读:
    【CodeForces 438D 】The Child and Sequence
    【雅礼集训 2017 Day1】市场
    【POJ2528】Mayor's posters
    【NOIP模拟】图论题Graph
    【BZOJ2654】Tree
    【NOIP模拟】函数
    【NOIP模拟】箱子
    【CQOI2014】数三角形
    【USACO2009Feb】股票市场
    【APIO2009-3】抢掠计划
  • 原文地址:https://www.cnblogs.com/1138720556Gary/p/9703470.html
Copyright © 2011-2022 走看看