我正在运行while循环以从输入文件读取并写入输出文件。该程序看起来工作正常,只是最后一行被读取了两次。我相信这段代码应该循环执行,直到文件没有剩余内容可供读取并关闭为止。
while (my_input_file) {
my_output_file << getStudentID() << " " << studentScores() << " ";
totalScore();
calculatePercentage();
calculateGrade();
}
答案 0 :(得分:0)
istream
直到之后尝试读取文件末尾,才知道它已经到达文件末尾。如果您只读取了文件的确切内容,则istream
仍然认为这样做很好,这意味着您在尝试从文件中读取内容后需要插入istream::fail
检查。