.eof()函数使用

void main()
{
    ifstream in("man.txt", ios::in | ios::binary);
    vector<roominformation>ppp;
    roominformation inform;
   // in.read((char*)&inform, sizeof(inform));
    
    

    while (!in.eof())                                    //.eof()              //文件数据全压入ppp
    {
        
        in.read((char*)&inform, sizeof(inform));
        ppp.push_back(inform);
    }
    in.close();
}

 

man.txt压了2个数据(roominformation型),为什么while循环只走了一遍

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 关于该问题,我找了一篇非常好的博客,你可以看看是否有帮助,链接:EOF错误

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^