急切求助
我写了一个操纵文件的c,将一个文件中内容复制到另一个中,但是为什么我的不成功,同学的电脑却可以做到,我的总是找不到文件,急求解
#include<stdio.h>
#include<stdlib.h>
void main()
{
FILE *in,*out;
char ch,infile[10],outfile[10];
printf("Enter the infile name:\n");
scanf("%s",infile);
printf("Enter the outfile name:\n");
scanf("%s",outfile);
if((in=fopen(infile,"r"))==NULL)
{
printf("Can't open infile!\n");
exit(0);
}
if((out=fopen(outfile,"w"))==NULL)
{
printf("Can't open outfile!\n");
exit(0);
}
while(!feof(in)) fputc(fgetc(in),out);
fclose(in);
fclose(out);
system("pause");
}
求解
[解决办法]
first, try to input the whole file path.
second, you need to confirm the file exist in your input folder
[解决办法]
贴段文件复制的代码:
供参考
//把空间放大一点,初始化下空间。
#include<stdio.h>
#include<stdlib.h>
void main()
{
FILE *in,*out;
char ch;
char infile[40]={0};//为什么不初始化,
//不初始化你怎么知道输入的文件名已经结束了(也就是在后面加个‘/0’)?
char outfile[40]={0};
printf("Enter the infile name:\n");
scanf("%s",infile);
printf("Enter the outfile name:\n");
scanf("%s",outfile);
if((in=fopen(infile,"r"))==NULL)
{
printf("Can't open infile!\n");
exit(0);
}
if((out=fopen(outfile,"w"))==NULL)
{
printf("Can't open outfile!\n");
exit(0);
}
while(!feof(in)) fputc(fgetc(in),out);
fclose(in);
fclose(out);
system("pause");
}