То, что я пытаюсь сделать, это читать числа из текстового файла (в настоящее время называемого «вводом»). Я создаю два массива, один для числа int и один для числа с плавающей запятой. Максимальное количество элементов в массиве установлено равным 50, однако минимальное равно 1. Идентификатором для программы, которая останавливает чтение чисел, является любое отрицательное число в значении int.
Я не уверен, почему, но когда я читаю обратно, мой массив выводит числа, пропускает последнее отрицательное число, а затем выводит тарабарские значения для оставшихся слотов (до 50).
Любой совет будет принят во внимание.
void Read(ifstream &input, int studentID[], float score[])
{
int curID;
float curScore;
for (int i = 0; i < 50; i++)
{
input >> curID >> curScore;
if (curID < 0)
{
return;
}
else
{
studentID[i] = curID;
score[i] = curScore;
}
}
}