您的位置:首页 > Web前端

用fread和fwrite把一个文件拷贝到另外一个文件,feof ferror bzero

2017-11-28 21:46 375 查看
#include <stdio.h>
#include <stdlib.h>
#include <string.h>

//feof ferror bzero
//用fread和fwrite把一个文件拷贝到另外一个文件
int main(int argc,char *argv[])
{
FILE *read_fp,*write_fp;

if(argc !=3)
{
printf("usage %s <filename1> <filename2>\n",argv[0]);
exit(1);
}

read_fp = fopen(argv[1],"r");//分别打开
if(read_fp == NULL)
{
perror("1fopen");
exit(1);
}

write_fp = fopen(argv[2],"w");//分别打开
if(write_fp == NULL)
{
perror("2fopen");
exit(1);
}
int ret;
char buf[20];
while( !feof(read_fp) && !ferror(read_fp))//没有到文件末尾并且没有出错
{
bzero(buf,20);//清空
ret = fread(buf,sizeof(char),20,read_fp);//fread返回值是读取的数量,必须要有fread
fwrite(buf,sizeof(char),ret,write_fp);
fwrite(buf,sizeof(char),ret,stdout);    //标准输出
}

fclose(read_fp);
fclose(write_fp);

return 0;
}


编译过程 $ ./a.out 14_feof.c test1.c
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐