标签:
1.
#include <iostream> #include <limits> int main() { int choice_i= 0; while(choice_i!= 5) { std::cout<<"enter integers: "; std::cin>>choice_i; if(0== std::cin.good()) { std::cin.clear(); std::cin.ignore(std::numeric_limits<std::streamsize>::max(),‘\n‘); } } return 0; }
cin>>int,如果输入字母或者其他,着读取失败,输入状态被置成失效位failbit,输入将被阻断,重复执行std::cout<<"enter integers: ",应对办法先检查输入状态,然后
输入状态清零cin.clear(),接着清空输入缓冲区std::cin.ignore(std::numeric_limits<std::streamsize>::max(),‘\n‘)。
标签:
原文地址:http://www.cnblogs.com/Call-C/p/5561759.html