Java教程

测量代码段运行时间

本文主要是介绍测量代码段运行时间,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

需要

time.h
struct timespec
{
  time_t tv_sec;     // seconds
  long tv_nsec;     // and nanoseconds
};
int clock_gettime(clockid_t clk_id,struct timespec *tp);

例子

 1 #include <stdio.h>
 2 #include <time.h>
 3 #include <math.h>
 4 #define times 1e6
 5 
 6 struct timespec t_start = {0,0};
 7 struct timespec t_end = {0,0};
 8 
 9 void *funcol[] = {sin, cos, tan, sinh, cosh, tanh, asin, acos, atan, log, log2, log10, exp, sqrt};
10 
11 int main()
12 {
13     
14     for(int p=0;p<14;p++)
15     {
16         clock_gettime(CLOCK_REALTIME,&t_start);
17         for(int i=0;i<times;i++)
18             (*(double (*)(int))funcol[p])(i);
19         clock_gettime(CLOCK_REALTIME,&t_end);
20         printf("%lf ms\n",(double)(t_end.tv_sec-t_start.tv_sec)*1000+(double)(t_end.tv_nsec-t_start.tv_nsec)/1000000);
21     }
22     return 0;
23 }

 

这篇关于测量代码段运行时间的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!