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;
}
这意味着提取并丢弃流中接下来的 256 个字符,或者直到下一个换行符。参考:http ://en.cppreference.com/w/cpp/io/basic_istream/ignore
它将继续跳过字符,直到满足两个条件之一
条件 1:跳过的字符数 = 256
条件 2:找到一个 '\n' 字符
因此,在您的情况下,它是从新行开始读取
它将忽略出现在流中的最多 256 个字符,如果'\n'
找到则更少。
它在您的示例中的使用是使用getline
.
它最多忽略字符 256 次或最多到换行符。
来自C++ 参考