现在的位置: 首页 > 综合 > 正文

C语言的两个工具函数

2018年01月31日 ⁄ 综合 ⁄ 共 1015字 ⁄ 字号 评论关闭

1.  测试程序执行时间的函数

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

void sleep( clock_t wait );

void main( void )
{
  long i = 60000000L;//6000 W
  clock_t start, finish;
  double duration;

  /* Delay for a specified time. */
  printf( "Delay for three seconds\n" );
  sleep( (clock_t)3 * CLOCKS_PER_SEC );
  printf( "Done!\n" );

  /* Measure the duration of an event. */
  printf( "Time to do %ld empty loops is ", i );
  start = clock();
  while( i-- )
  ;
  finish = clock();
  duration = (double)(finish - start) / CLOCKS_PER_SEC;
  printf( "%2.2f seconds\n", duration );
}

/* Pauses for a specified number of milliseconds. */
void sleep( clock_t wait )
{
  clock_t goal;
  goal = wait + clock();
  while( goal > clock() )
  ;
}

 

2. 用于随机生成数组并存入文件,以便多个函数调用

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define DATASIZE 10000

int main(int argc, char ** argv)
{
      const char * file_name = "out.dat";
	  FILE * fp = fopen(file_name, "wb");//必须放在其他变量的定义之前
	  int i, a, b[DATASIZE];
	  srand( time(NULL) );
	  for(i=0; i<DATASIZE; i++)
	  {
		  a=rand()%100;
		  fwrite(&a, sizeof(int), 1, fp);
	  }
	  fclose(fp);

      fp = fopen(file_name, "rb");
      fread(&b, sizeof(int), DATASIZE, fp);
      
	  for(i=0; i<10; i++)
		  printf("%d  ", b[i]);
	  printf("\n");

      return 0;
}

 

end

 

 

【上篇】
【下篇】

抱歉!评论已关闭.