在看C语言的文件部分,书上有个例子
#include<stdio.h>
#include<stdlib.h>
int main()
{
FILE *fp;
char ch;
if(fp=fopen("text.txt","w")==NULL)
{
printf("can not open this file\n");
exit(0);
}
printf("enter characters(ended with '#'):\n");
ch=getchar();
while(ch!='#')
{
fputc(ch,fp);
ch=getchar();
}
fclose(fp);
return 0;
}
我运行之后发现文件中根本没有写入任何东西,于是我去网上找了另一段代码:
#include <stdio.h>
#include <stdlib.h>
void main()
{
FILE*fpout;
char ch;
if((fpout=fopen("text.txt","w"))==NULL)
{
printf("Error!\n");
exit;
}
ch=getchar();
while(ch!='#')
{
fputc(ch,fpout);
ch=getchar();//不能仅写getchar();
}
fclose(fpout);
}
这段代码在我电脑里就可以写入东西。。。
为什么??我看了半天,感觉这两段没有什么区别啊,为什么运行时一个对,一个就不能写入任何东西,求教。
#include<stdio.h>
#include<stdlib.h>
int main()
{
FILE *fp;
char ch;
if(fp=fopen("text.txt","w")==NULL)
{
printf("can not open this file\n");
exit(0);
}
printf("enter characters(ended with '#'):\n");
ch=getchar();
while(ch!='#')
{
fputc(ch,fp);
ch=getchar();
}
fclose(fp);
return 0;
}
我运行之后发现文件中根本没有写入任何东西,于是我去网上找了另一段代码:
#include <stdio.h>
#include <stdlib.h>
void main()
{
FILE*fpout;
char ch;
if((fpout=fopen("text.txt","w"))==NULL)
{
printf("Error!\n");
exit;
}
ch=getchar();
while(ch!='#')
{
fputc(ch,fpout);
ch=getchar();//不能仅写getchar();
}
fclose(fpout);
}
这段代码在我电脑里就可以写入东西。。。
为什么??我看了半天,感觉这两段没有什么区别啊,为什么运行时一个对,一个就不能写入任何东西,求教。
最忆少年时