c语言fopen函数打不开文件?

我有两个TXT文件分别在d:\a.txt, d:\b.txt a文件里的数据为 "ABCD" B 里面的数据为空,下面代码的结果是将A文件的内容复制到B文件内~

#include <stdio.h>
#include <stdlib.h>

void main()
{
FILE *in,*out;
char ch,infile[10],outfile[10];

printf("infile name\n");
scanf("%s",infile);
printf("outfile name\n");
scanf("%s",outfile);

in = fopen(infile,"r");
out = fopen(outfile,"w");

while(! feof(in))
{
fputc(fgetc(in),out);
}
fclose(in);
fclose(out);
} 这段代码可以执行 SCANF输入的分别为D:\A.TXT D:\B.TXT

#include <stdio.h>
#include <stdlib.h>

void main()
{
FILE *in,*out;

in = fopen("d:\a.txt","r");
out = fopen("d:\b.txt","w");
while (! feof(in))
{
fputc(fgetc(in),out);
}

fclose(in);
fclose(out);
} 这段代码却不能执行 能编译成EXE 但CMD运行结果是卡住~死循环~

上面输入AB文件的地址那部分是不是有什么问题;

我用char *filename="d:\a.txt";
in=fopen(filename,'r'); 也是能编译但执行结果不是预期的结果,这是怎么回事

qq_笑_17
浏览 1925回答 3
3回答

小唯快跑啊

SCANF输入的分别为D:\A.TXT D:\B.TXT改成D:\\A.TXT 和 D:\\B.TXT
打开App,查看更多内容
随时随地看视频慕课网APP