我在使用c ++读取文件时遇到问题。每行包含一个浮点数的文件如下
1.33
5.45
6.21
2.48
3.84
7.96
8.14
4.36
2.24
9.45
我的代码是读取和打印每行并打印两次。我该如何修复它?
string line;
fstream inputNumbersFile("input.txt");
if (inputNumbersFile.is_open())
{
while (!inputNumbersFile.eof())
{
getline(inputNumbersFile, line);
cout << line << endl;
}
}
答案 0 :(得分:4)
在循环条件中使用inputNumbersFile.eof()
是一个坏主意。只需用
while (getline(inputNumbersFile, line))
cout << line << endl;