# std::basic_ios<CharT,Traits>::rdstate

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

iostate rdstate() const; |  |

Returns the current stream error state.

### Parameters

(none)

### Return value

current stream error state. It is a bitmask type and 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

### Example

Run this code

    #include <iostream>
    #include <sstream>

    int main()
    {
        std::ostringstream stream;

        if (stream.rdstate() == std::ios_base::goodbit)
            std::cout << "stream state is goodbit\n";

        stream.setstate(std::ios_base::eofbit);

        // check state is exactly eofbit (no failbit and no badbit)
        if (stream.rdstate() == std::ios_base::eofbit)
            std::cout << "stream state is eofbit\n";
    }

Output:

    stream state is goodbit
    stream state is eofbit

### See also

setstate | sets state flags (public member function)
clear | modifies state flags (public member function)

Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp/io/basic_ios/rdstate&oldid=158255"