feof()的实现与平台有关。

在stdio.h中feof的定义:

#define _IOEOF 0x0010

#define feof(_stream) ((_stream)->_flag & _IOEOF)

由此可知,只有当fp->_flag & 0x0010为真时,才认为文件结束了。在VC里,只有当file position indicator(在Windows上是fp->_ptr)到了文件末尾,然后再发生读/写操作时,fp->_flag才会被置为含有_IOEOF,然后再调用feof(),才会得到文件结束的信息,并不是file position indicator一指到文件尾,feof()就认为文件结束。

相关文章:

  • 2021-07-15
  • 2021-08-05
  • 2021-12-01
  • 2021-09-22
  • 2022-12-23
  • 2022-12-23
  • 2022-02-12
  • 2021-12-30
猜你喜欢
  • 2022-12-23
  • 2022-02-08
  • 2022-02-20
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案