cin.ignore(256, '\n')
在以下代码中的含义是什么?
while (std::cin.fail()) {
std::cout << "Please enter a mark from 1 to 100. Enter your first mark" << std::endl;
std::cin.clear();
std::cin.ignore(256,'\n');
std::cin >> dblMarkOne;
}
答案 0 :(得分:2)
这意味着提取并丢弃流中的下256个字符,或直到下一个换行符。参考:http://en.cppreference.com/w/cpp/io/basic_istream/ignore
答案 1 :(得分:1)
在满足两个条件之一之前,它将继续跳过字符
条件1:滑雪杖的数量= 256
条件2:找到'\ n'字符
因此,在您的情况下,它开始从新行开始阅读
答案 2 :(得分:0)
它会忽略流中最多256个字符,如果找到'\n'
则会更少。
在您的示例中使用它是一种使用getline
的更强大解决方案的简单方法。
答案 3 :(得分:0)
它最多忽略字符256次或直到换行符。