У меня есть такая функция, все, что я хочу, это разбить цикл, если pa [i] .fullname - пустая строка. Пробовал несколько способов, до сих пор не нашел растворения. Я иду вместе с книгой Стивена Праты, и это одно из упражнений. Был бы рад некоторым советам.Ломать петлю во время ввода пустой строки
int getinfo(student pa[], int n)
{
int i = 0;
for (i = 0; i < n; i++) {
cout << "Imie: " << endl;
cin >> pa[i].fullname;
cout << "Hobby: ";
cin >> pa[i].hobby;
cout << "Ooplevel: ";
cin >> pa[i].ooplevel;
[enter link description here][1]
}
return i;
}
'если (па [я] .fullname.empty()) {перерыва; } 'Предполагая полное имя std :: string. –
http://hastebin.com/jufukofaji.cpp здесь остальная часть кода, пока не удалось определить форматирование кода на этом сайте, извините, я делаю это так – Kossano
@TrevorHickey Ум ... даже если бы это было 'std :: string', который не будет работать как общее решение. Оператор извлечения будет пропускать пробелы, включая новые строки, до сбоя потока или фактически считывает непустую строку. Я думаю, что правильное решение использует 'std :: getline', а не потоковое извлечение, и, конечно же, OP фактически должен проверять все операции ввода-вывода. – WhozCraig