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