测试的程序运行时间简单方法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/dark_cy/article/details/88649814

今天看网课的时候学习到的方法,感觉非常简单,就记录一下

上代码

#include<stdio.h>
#include<time.h>        //包含clock()函数的头文件
clock_t start,stop;     /*clock_c是clock()函数返回的变量类型*/
double duration;        /*记录被测函数运行时间,单位为s*/
void MyFunction()    
{
    int i=0;
    while(1)
    {
        i++;
        if(i==100000000)
            break;
    }
}
int main()
{
    start=clock();     /*不在测试范围内的准备工作写在clock()调用之前*/
    MyFunction();      //被测函数
    stop=clock();      /*其他不在测试范围的写在clock()函数调用之后*/
    duration=((double)(stop-start))/CLK_TCK;
    printf("%lfs\n",duration);          
    return 0;
}
/*
    clock() 函数:捕捉从程序开始运行到clock()被调用时所耗费的时间,这个时间单位是clock tick,即“时钟打点”
    常数CLK_TCK:机器时钟每秒所走的时钟打点数
*/

注:有时候输出的时间会是0,那是因为你的程序运行的时间太快了,不足以被记录到。这时候你可以让它多循环一次,然后再让总的时间除以循环的次数,就可以得到运行一次的时间啦

是不是可简单!啦啦啦啦啦

猜你喜欢

转载自blog.csdn.net/dark_cy/article/details/88649814