У меня есть эта программа, которую я пишу, чтобы читать и вычислять принцип и интерес из файла и печатать таблицу в выходной файл. Все работает отлично, но я не могу понять, почему я застрял в цикле while. Он правильно печатает все мои данные, но он постоянно ждет другого значения и не выходит. Может ли кто-нибудь пролить свет на меня?конец файла бесконечный while-loop
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;
}
Я пропустил это. Спасибо!!! –