C++统计函数时间

来源:互联网 发布:java不能重载运算符 编辑:程序博客网 时间:2024/06/07 02:10

方法一 只能精确到秒(不准), time函数返回值是long型(单位是秒),停留2500毫秒,可能结果是3秒,也可能是2秒。取决月time()函数返回值舍入。

#include <time.h>#include <windows.h>int main(void){   time_t   start, finish;   double   t;   time( &start );   Sleep(2500);   time( &finish );   t = difftime( finish, start );   printf( "\nProgram takes %f seconds.\n", t );   return 0;}

 

方法二 精确 clock函数返回是毫秒数。

int main(void){clock_t begin,end;begin=clock();Sleep(2500);end=clock();double t = (end-begin)/1000.0;//printf("\nProgram takes %0.2f microseconds.\n",t);}


总结

//为返回void类型,不带参数的函数计算时间double check_time_pro(void (*f)()){double t = 0.0;begin=clock();f();end=clock();return (end-begin)/1000.0;}


 

原创粉丝点击