ifstream olympicsStream;
olympicsStream.open("olycs105.txt");
这是打开文件的地方
olympicsStream >> firstcountry; // string variable for countries
while (firstcountry!="END_OF_FILE")//
无法弄清楚放置在这里的状况
{
cout << firstcountry << endl;
olympicsStream >> a;
cout << a << endl;
for (i = 0; i < 5; i++)
{
olympicsStream >> namelast[i];
olympicsStream >> namefirst[i];
olympicsStream >> b[i];
olympicsStream >> c[i];
olympicsStream >> d[i];
getline(olympicsStream, Asport[i]);
}
cout << namelast[i - 1] << endl;
cout << namefirst[i - 1] << endl;
cout << b[i - 1] << endl;
cout << c[i - 1] << endl;
cout << d[i - 1] << endl;
cout << Asport[i - 1];
}
循环需要5行,但是无限地循环同一行,而不是遍历文件的其余部分
最佳答案
您忘记在while循环结束时更新变量“ firstcountry”。
只需在关闭while循环之前添加olympicsStream >> firstcountry;
,您的代码即可正常运行
假设文件中的最后一个单词是“ END_OF_FILE”