【发布时间】:2021-01-23 09:41:26
【问题描述】:
是否有任何标准的非阅读方式来检查输入流中是否有任何待处理的字符?我总是可以尝试类似的东西
char buffer[256];
std::cin.get(buffer, 256, '\n');
if (!std::cin.fail()) {
// use buffer
}
但它谴责我玩 ios 标志,使用 C 字符串等等。没有更简单,更清洁的方法吗?像这样:
if (std::cin.has_data()) {
std::string data;
std::getline(std::cin, data);
// do my stuff
}
【问题讨论】: