在固定数组上使用getline
循环的正确方法是什么?如果在读取字符块中找不到分隔符,则以下循环将停止。
char data[4];
while (cin.getline(data, 4, '.'))
{
...
}
导致循环失败的示例数据:
asdasdasdasd.asdasdasd
答案 0 :(得分:3)
“在固定数组上使用getline
循环的正确方法是什么?”
char
数组可能的解决方案:
std::string token;
while (std::getline(std::cin, token, '.')) {
if (token.empty()) {
// TODO
continue; // ?
}
if (token.size() == 4) {
// TODO
}
else {
// TODO
}
}