table of contents
        
      
      
    | std::basic_ios::clear(3) | C++ Standard Libary | std::basic_ios::clear(3) | 
NAME¶
std::basic_ios::clear - std::basic_ios::clear
Synopsis¶
void clear( std::ios_base::iostate state = std::ios_base::goodbit );
  
   Sets the stream error state flags by assigning them the value of state. By
    default,
  
   assigns std::ios_base::goodbit which has the effect of clearing all error
    state
  
   flags.
  
   If rdbuf() is a null pointer (i.e. there is no associated stream buffer),
    then state
  
   | badbit is assigned.
Parameters¶
 new error state flags setting. It can be a combination of the
    following
  
   constants:
  
   state - Constant Explanation
  
   goodbit no error
  
   badbit irrecoverable stream error
  
   failbit input/output operation failed (formatting or extraction error)
  
   eofbit associated input sequence has reached end-of-file
Return value¶
(none)
Exceptions¶
 If the new error state includes a bit that is also included in
    the exceptions()
  
   mask, throws an exception of type failure.
Example¶
 clear() without arguments can be used to unset the failbit after
    unexpected input;
  
   for std::cin.putback(c) see ungetc.
// Run this code
  
   #include <iostream>
  
   #include <string>
  
   int main()
  
   {
  
   for (char c : {'\n', '4', '1', '.', '3', '\n', 'Z', 'Y', 'X'})
  
   std::cin.putback(c); // emulate user's input (not portable: see ungetc
  Notes)
  
   double n;
  
   while( std::cout << "Please, enter a number: " && !
    (std::cin >> n) )
  
   {
  
   std::cin.clear();
  
   std::string line;
  
   std::getline(std::cin, line);
  
   std::cout << line << "\nI am sorry, but '" <<
    line << "' is not a number\n";
  
   }
  
   std::cout << n << "\nThank you for entering the number
    " << n << '\n';
  
   }
Output:¶
 Please, enter a number: XYZ
  
   I am sorry, but 'XYZ' is not a number
  
   Please, enter a number: 3.14
  
   Thank you for entering the number 3.14
See also¶
 setstate sets state flags
  
   (public member function)
  
   rdstate returns state flags
  
   (public member function)
| 2022.07.31 | http://cppreference.com |