如果输入的整数大于固定数,我想引发 cin.fail() 错误?我怎样才能做到这一点?
int a;
cin >> a;
if (a > 10)
//raise cin.fail()
最佳答案
您可以使用 setstate
设置failbit
:
#include <iostream>
#include <sstream>
int main()
{
int a;
std::cin >> a;
if(a > 10)
std::cin.setstate(std::ios_base::failbit);
if (std::cin.fail()) {
std::cout << "fails\n";
}
}
关于c++ - 手动设置 cin.fail(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61116652/