奇怪的现象,寻高手解惑!
将数据写入磁盘文件,输入#是结束写入。如果把下面红色部分代码写成“while((ch=getchar())!='#')”,运行结果不一样,为什么呀?
#include <stdio.h>
main()
{
FILE *fp;
char ch,filename[50];
printf("please input file's name:\n");
gets(filename);
if((fp=fopen(filename,"w"))==NULL)
{
printf("cannot open file!");
getch();
exit(0);
}
ch=getchar() ;
while (ch!='#')
{
fputc(ch,fp);
ch=getchar();
}
fclose(fp);
}