0
我有這個程序,我正在寫這個程序來讀取和計算文件的原理和興趣,並將表格打印到輸出文件。一切工作正常,但我不明白爲什麼我卡在主循環中。它能正確打印我的所有數據,但它不斷等待另一個值並且不會退出。任何人都可以爲我揭開一些光明嗎?文件末尾無限while循環
int main()
{
ifstream inData;
ofstream outData;
float principle=0;
int years;
float rate;
inData.open("inputdata.txt");
if (!inData){
cout<<"Error opening file."<<endl;
return 1;}
outData.open("outputdata.txt");
if (!outData){
cout<<"Error opening file."<<endl;
return 1;}
getData(inData, principle, years, rate);
while(!inData.eof(){
printTable(outData, principle, years, rate);
principle=0;
getData(inData, principle, years, rate);
}
return 0;
}
void getData (ifstream& inData, float& principle, int& years, float& rate)
{
char temp;
int temp2=0;
inData.get(temp);
while(temp!=' '){
if(isdigit(temp)){
temp2=temp-'0';
principle=(10*principle)+temp2;}
inData.get(temp);
}
inData>>years>>rate;
}
我錯過了。謝謝!!! – 2014-10-16 15:35:59