一段测试DiskIO的代码

#include #include #include #include int main(int argc, char **argv) { const char A = 'a'; FILE *fp = NULL; char * p = NULL; long i = 0L; long size = 0L; time_t start = 0L; time_t end = 0L; struct timeval tv_start = {0}; struct timeval tv_end = {0}; p = *++argv; if (p == NULL) { printf("Input file size by mb, please. SIZE(mb) = "); scanf("%d", &size); } if (size == 0L) { size = atoi(p); } fp = fopen("dump.dat", "w"); if(fp == NULL) { perror("failed to open dump.dat"); return EXIT_FAILURE; } timerclear(&tv_start); timerclear(&tv_end); /// time(&start); gettimeofday(&tv_start, NULL); for (i = 0; i < 1024 * 1024 * size; i++) { fputc(A, fp); } gettimeofday(&tv_end, NULL); /// time(&end); start = tv_start.tv_sec * 1000000 + tv_start.tv_usec; end = tv_end.tv_sec * 1000000 + tv_end.tv_usec; printf("Wrote %d bytes. fclose(fp) %s./n", i, fclose(fp) == 0 ? "succeeded" : "failed"); printf("TIME = %d.%3d s./n", (end - start)/1000000, ((end - start)/1000)%1000); return EXIT_SUCCESS; }

你可能感兴趣的:(测试,null,fp,struct,include,file)