控制台宽度;假设违约或被制造......?

时间:2013-04-08 13:06:44

标签: c++ cin

从控制台读取输入

if(std::cin){
    decision = std::cin.get();

    if(std::cin.eof())
        throw CustomException("Error occurred while reading input\n");
}else{
    throw CustomException("Error occurred while reading input\n");
}

清除流上的剩余输入

std::cin.ignore(COL_WIDTH, '\n'); // skip bad input
通过Why is the default terminal width 80 characters?确定

COL_WIDTH为80。我应该假设一个80个字符的控制台宽度,还是一个更适合cin.ignore的任意大号?

1 个答案:

答案 0 :(得分:2)

您可以输入多行字符,即使它是80  请改用std::numeric_limits<std::streamsize>::max()