Namespaces
Variants
Views
Actions

std::basic_ios::clear

From cppreference.com
< cpp‎ | io‎ | basic ios

Clears the stream error state flags by assigning them the value of state. If rdbuf() == 0 then state | badbit is assigned. May throw an exception.

Contents

[edit] Parameters

state - new error state flags setting. It can be a combination of the following constants:
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


[edit] Return value

(none)

[edit] Example

clear() without arguments can be used to unset the failbit after unexpected input

#include <iostream>
#include <string>
 
int main()
{
    double n;
    while( std::cout << "Please, enter a number\n"
           && ! (std::cin >> n) )
    {
        std::cin.clear();
        std::string line;
        std::getline(std::cin, line);
        std::cout << "I am sorry, but '" << line << "' is not a number\n";
    }
    std::cout << "Thank you for entering the number " << n << '\n';
}


[edit] See also

sets state flags
(public member function) [edit]
returns state flags
(public member function) [edit]