У меня проблемы с пониманием следующего кода
for (i = 0; i < ArSize; i++) { cout << i+1 << “: “; cin.get(temp, MaxLen); while (cin && cin.get() != ‘\n’) continue; if (!cin || temp[0] == ‘\0’) break; else sayings[i] = temp; }
Мой вопрос: когда цикл while завершается? пожалуйста, объясните мне, что делает цикл while в этой программе.
Цикл проверяет, находится ли объект потока, cin, в хорошем состоянии или нет, и затем пропускает что-либо до новой строки.
cin
Объекты потока определяют преобразование в bool, которое имеет значение true, только когда потокне в состоянии ошибки.