# std::basic_ios::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 | clears error and eof flags (public member function)

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