C语言将一个磁盘文件中的内容复制到另一个磁盘文件中时出现奇怪字符

来源:百度知道 编辑:UC知道 时间:2024/05/17 14:07:40
磁盘文件的内容能完全复制,不过复制过来的文件最后加了一个奇怪字符,是y上有两个点,也不知是啥东东哦
源程序是
#include<stdio.h>
#include<stdlib.h>
void main()
{
FILE *in,*out;
char infile[10],outfile[10];
printf("Please input the infile name:");
scanf("%s",infile);
printf("Please input the outfile name:");
scanf("%s",outfile);

if(!(in=fopen(infile,"r")))
{
printf("File open error!");
exit(1);
}
if(!(out=fopen(outfile,"w")))
{
printf("file open error!");
exit(1);
}

while(!feof(in))
fputc(fgetc(in),out);
printf("Copy success!\n");
fclose(in);
fclose(out);
}

用C语言的输入输出虽然快但不稳,如果用流做就不会出现乱码了

哦 这个是你的判断问题

while(1)
{
if(feof(in)==1)break;
fputc(fgetc(in),out);
}
printf("Copy success!\n");
fclose(in);
fclose(out);
}