|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 秦晓彬 于 2014-4-6 21:55 编辑
下面的代码不能写入,还请大神帮忙看看
/*
时间:2014年4月6日17:05:27
目的:实现将文件a中的内容写到文件b中
*/
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main ()
{
FILE*fp;
FILE*rp;
char filename1[256];
char filename2[256];
lable1:;
printf("please input the first filename:\n");
gets(filename1);
fp=fopen(filename1,"r");
if (NULL==fp)
{
printf("the first file open fail!!\n");
//exit(0);
goto lable1 ;
}
lable2:;
printf("please input the filename you want keep:\n");
gets(filename2);
rp=fopen(filename2,"ab+");
if (NULL==rp)
{
printf("the file crate fail!!\n");
//exit(0);
goto lable2 ;
}
//这里使用fcanf,和fprintf
//fscanf(FILE *, const char *, ...);
//fprintf(FILE *, const char *, ...);
int ch=0;
printf("writing……\n");
while(feof(fp))//feof(fp)注意这里的fp 不能使rb(以二进制打开的文件)EOF!=ch
{
fscanf(fp,"%d",&ch);//读取fp所指向的文件的文件的内容,并存到ch中
fprintf(rp,"%d",ch);//把ch写到rp所指向的文件中
}
printf("write finished.\n");
system("pause");
fclose(fp);
fclose(rp);
return 0;
}
EOF!=ch 和 feof(fp) 有什么区别,在这里为什为执行的结果不一样
|
|