【C++】关于fstream流的eof()判断是否到了文件结尾,出现多读行的问题

  • Post author:
  • Post category:其他


  1. 假设读以下文件内容,打印输出时会发现多读取一行。
while (!inFile.eof()) {
        // 读姓名
        inFile >> name;
        cout << "姓名:" << name << "\t";
        // 读年龄
        inFile >> age;
        cout << "年龄:" << age <<" 岁\n";
    }

在这里插入图片描述

在这里插入图片描述

  1. 出现这种原因是因为我们的文件内容多了一行数据,即便是空白数据也会造成多读,将第四行删除就不会造成多读行信息

    在这里插入图片描述

    在这里插入图片描述



版权声明:本文为weixin_46168054原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。