0
我有一个这样的功能,所有我想要的是打破一个循环,如果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;
}
'如果(PA [I] .fullname.empty()){打破; }'假设fullname是std :: string。 –
http://hastebin.com/jufukofaji.cpp 这里是代码的其余部分,无法找出在这个网站上的代码格式,但抱歉,我这样做这 – Kossano
@TrevorHickey嗯......即使这是一个'std :: string'不能用作一般的解决方案。提取操作符将跳过包括换行符在内的空格,直到流失败或实际读取非空字符串。我认为一个合适的解决方案使用'std :: getline'而不是流提取,当然,OP实际上应该是检查所有的IO操作。 – WhozCraig