char value; while (!(std::cin >> value)) { std::cin.clear(); std::cin.ignore(std::numeric_limits<std::streamsize>::max(), ' '); }