fast_exp_test.c

来自「ns2下用于802.11的无线传输模型的代码 增加了基于信噪比计算差错率等功能」· C语言 代码 · 共 57 行

C
57
字号
#include <stdio.h>#include <stdlib.h>#include <math.h>#include <sys/time.h>int main(){  int i,j,k;  long period;  double pre[30];  double base,r;  struct timeval before, after;    base = 0.99999;  pre[0] = base;  for(i=1;i<30;i++)  {    pre[i] = pre[i-1]*pre[i-1];  }    gettimeofday(&before,NULL);  for(i=0;i<10000000;i++)  {    r = pow(base, 120000);  }  printf("%12lf \n", r);  gettimeofday(&after,NULL);  period = (after.tv_sec-before.tv_sec)*1000*1000;  period = period+after.tv_usec-before.tv_usec;  printf("Time needed for original pow function is %d ms \n",period/1000);    gettimeofday(&before,NULL);  for(i=0;i<10000000;i++)  {    j=0;    k=120000;    r=1;    while(k>0)    {      if(k%2==1) r= r*pre[j];      j++;      k=k/2;    }  }  printf("%12lf \n", r);  gettimeofday(&after,NULL);  period = (after.tv_sec-before.tv_sec)*1000*1000;  period = period+after.tv_usec-before.tv_usec;  printf("Time needed for fast pow function is %d ms \n",period/1000);  return 0;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?