利用标准IO实现拷贝功能
#include<sys/types.h>
#include<stdio.h>
#include<stdlib.h>
#define BUF_SIZE 1024
int main(void)
{
char buf[BUF_SIZE];
FILE *source,*backup;
if(!(source=fopen("source.dat","r")))
{
printf("Error in opening file.\n");
exit(1);
}
if(!(backup=fopen("backup.dat","w")))
{
printf("Error in creating file.\n");
exit(1);
}
unsigned long readNUM=0;
while((readNUM=fread(buf,1,sizeof(buf),source)))
{
if(!(fwrite(buf,1,readNUM,backup)))
{
printf("Error in writing file.\n");
exit(1);
}
}
if(ferror(source)!=0)
{
printf("Error in reading file.\n");
exit(1);
}
if(fclose(source))
{
printf("Error in close file.\n");
exit(1);
}
if(fclose(backup))
{
printf("Error in close file.\n");
exit(1);
}
return 0;
}
方