概述
fstream流的eof() 判断有点不合常理 按正常逻辑来说,如果到了文件末尾的话 ,那eof()应返回真 但是,c++输入输出流如何知道是否到末尾呢? 原来是根据的是: 如果fin>>不能再读入数据了,才发现到了文件结尾,这时才给流设定文件结尾的标志,此后调用eof()时,才返回真。 假设 fin>>x; //此时文件刚好读完最后一个数据(将其保存在x中) 但是, 这时 fin.eof()仍未假 因为,fin流的标志eofbit是FALSE, fin流此时认为文件还没有到末尾 只有当流再次读写时 fin>>x; 发现已无可读写数据,此时流才知道到达了结尾,这时才将标志eofbit修改为TRUE 此时流才知道了文件到底了末尾 也就是说,eof在读取完最后一个数据后,仍是False<
最后
以上就是健忘日记本为你收集整理的ifstream 流 判断文件是否结尾的函数eof(.xml的全部内容,希望文章能够帮你解决ifstream 流 判断文件是否结尾的函数eof(.xml所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复