这一句:
目前创新互联建站已为千余家的企业提供了网站建设、域名、雅安服务器托管、网站托管维护、企业网站设计、白山网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
while (!feof(p));//循环到文件结尾
把while (!feof(p)) 后面的 ; 去掉,否则就成死循环了
feof()函数不是判断上次读操作是否读到文件末尾,而是判断当前文件指针所指向未知是否是文件末尾。和你读没读没关系。
所以即使你打开文件,没有读,如果文件是个空文件,那么直接调用feof()也将返回真。
即使文件是空的,也要再读一次,feof函数值才会变为真。
因为只有读出所有的数据之后,再读一次,函数feof(fp)的返回值才为真。(请见《C语言好程序设计—从入门到进阶》,人民邮电出版社,2011。)
示例:
#includestdio.h
#includestdlib.h
main()
{
FILE *fp;
int a;
if((fp=fopen("c:\\number.txt","r"))==NULL)
{
printf("文件打开失败!\n");
exit(0);
}
fscanf(fp,"%d",a);
while(!feof(fp)) /*等价于while(feof(fp)==0)*/
{
printf("%d ",a);
fscanf(fp,"%d",a);
}
fclose(fp);
}
feof
只是“事后”检查,它不会改变文件流的状态,甚至根本不会去读文件,它只会检查相应的
FILE
结构体的
eof
标记。某种意义上,
feof
就是面向对象中的
getter
方法。
只有别的函数从文件里面读东西然后因为碰到错误于是需要的东西没有读出来,才会把
对应的
FILE
结构体
的
eof
标记设为真。
当前题目:c语言feof函数使用,c++ feof
文章源于:https://www.cdcxhl.com/article18/dsgojgp.html
成都网站建设公司_创新互联,为您提供网站设计、搜索引擎优化、营销型网站建设、网站排名、企业网站制作、定制开发
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联