#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<time.h>
void file_copy(char *src, char *dst)
{
FILE *fp1, *fp2;
int c;
fp1 = fopen(src, "rb");
fp2 = fopen(dst, "wb");//打开文件
if(fp1 == NULL || fp2 == NULL)//错误处理
{
printf("open file failed\n");
if(fp1) fclose(fp1);
if(fp2) fclose(fp2);
}
while((c = fgetc(fp1)) != EOF)//读字节
fputc(c, fp2); //写数据
fclose(fp1);//关闭文件
fclose(fp2);
}
void main()
{
//计时测试
long start,end;
//计时测试开始
start = clock();
char srcpath[50] = "D:\\100G文件测试\\test.jpg";
char str[30];
for(int i=1;i<=100000;i++)
{
char destpath[50] = "D:\\100G文件测试\\";
itoa(i,str,10);
strcat_s(str,".jpg");
strcat_s(destpath,str);
file_copy(srcpath,destpath);
}
//计时测试结束
end = clock();
//输出结果
printf("本次检索所用的时间为:%ld(单位ms)\n",end-start);
system("pause");
}
没有任何优化......可以看看多线程,并发,并行考虑优化