c语言feof()函数如何判断二进制文件结束

最近在写代码时遇到了一个问题想知道c语言中的feof()函数如何判断文件结束例:int n=0;/*n用于计数*/while(!feof(*fp)){ 。。。 n++;/*记录循环次数*/}大概就是这样一段代码,*fp指向一个76字节的文件,为什么循环总是执行77次(检测n值总是等于77)很郁闷。。。。请论坛大侠给指点下,谢啦!

n++前还有个读操作吧,因为当fp指到文件末尾位置时,这一步读操作并没使fp的flag改为-1,只有当在进行一次读操作时,才会改变,这时feof()才能返回文件结束信息最好这样写读操作;n++;while(){printf();读操作;n++;}
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-08-29
奇怪的,没注意过,难道指向最后一个字节后也算一次,然后才是返回结束?

c语言feof()函数如何判断二进制文件结束
n++前还有个读操作吧,因为当fp指到文件末尾位置时,这一步读操作并没使fp的flag改为-1,只有当在进行一次读操作时,才会改变,这时feof()才能返回文件结束信息最好这样写读操作;n++;while(){printf();读操作;n++;}

c语言feof函数的用法
feof是一个c语言函数,既可用以判断二进制文件又可用以判断文本文件。feof(fp)有两个返回值:如果遇到文件结束,函数feof(fp)的值为1,否则为0。EOF是文件结束标志的文件。在文本文件中,数据是以字符的ASCⅡ代码值的形式存放,ASCⅡ代码的范围是0到255,不可能出现-1,因此可以用EOF作为文件结束标志...

feof()函数的功能是
feof函数的功能是检测流上的文件结束符。feof是C语言标准库函数,其原型在stdio.h中。feof函数的功能是检测流上的文件结束符,如果文件结束,则返回非0值,否则返回0。feof函数是一个用于判断文件结束的函数。在C语言中,文件是通过文件指针来表示的,当用户读取文件时,需要不断地从文件中读取内容,直...

c语言中feof是什么意思
在C语言中,feof是一个极其实用的函数,它用于判断一个文件是否已到达其结尾,无论是二进制文件还是文本文件。这个函数的返回值有明确指示:当文件结束时,feof(fp)会返回1,否则返回0。EOF,即文件结束标志,对于文本文件特别适用,因为字符数据以ASCⅡ码的形式存储,其范围在0到255,而-1是不可能出现...

c语言中用fread和fwrite函数读数据时怎样判断文件结束?
使用feof()来判断,返回非0就是结束了。if (feof(fp))... 此时就表明文件结束了,别再读了

feof()函数是什么意思啊?
1、feof(fp)是C语言中的一种判断方式,用于判断当前文件指针是否已经读到了文件末尾。具体来说,当feof()函数返回值为非零值时,即表示已经到达文件末尾。2、而feof(fp)是逻辑非操作符!应用于feof()函数的返回值,它等价于feof()函数返回值为0的逻辑否定,即表示文件指针尚未到达文件末尾。因此,feof...

c语言feof()
第一个代码结果是11不错,但第二个就不是10了,应该是2——第一个代码用fgetc读,它把结束符也当一个字符读取了,当然'\\n'也被读取了,共读了12个,但c=='\\n'时被否定了,num没有增值,所以最后num是11;第二个代码显然只能把0123456789当一个整数来读(遇到'\\n'判断为数据结束),所以一次...

c++如何判断文件末尾
使用标准库函数feof()可判断是否到达文件结尾。用法:include <stdio.h> int feof(FILE *stream);参数流 :FILE结构的指针。功能:feof是C语言标准库函数,其原型在stdio.h中,其功能是检测流上的文件结束符,如果文件结束,则返回非0值,否则返回0(即,文件结束:返回非0值,文件未结束,返回0值...

c语言feof()函数
fcanf读了9\\n ,num++=10 接下来feof直接读到文件结尾,然后break fgetc 最后的字符后换行是分开读的,算两个,所以第一个加了一个判断是不是换行 fgetc 是读9 接下来feof不是结尾,num++=10,继续循环,然后fgetc 取\\n 不进行判断feof 继续循环,然后fgetc取FF,num++=11 接下来feof直接读到文件结尾,...

feof(fp)是什么意思?每一个字母如何解释?
feof是C语言标准库函数,其原型在stdio.h中,其功能是检测流上的文件结束符,如果文件结束,则返回非0值,否则返回0(即,文件结束:返回非0值,文件未结束,返回0值),文件结束符只能被clearerr()清除。(这里的检测流上的文件结束符就相当于声卡检测电流信号的一个过程)int feof(FILE *stream);...

相似回答