# **[](https://en.cppreference.com/w/cpp/header/istream)** defines `std::basic_istream` and `std::istream`, the base classes for input streams. It provides `operator>>` for formatted input, `get()`, `getline()`, and `read()` for unformatted input. You rarely use this directly; instead you use concrete classes like `std::cin` or `std::ifstream` that inherit from it. ## Example This example uses a string stream for formatted input parsing, extracting an integer, string, and floating-point value. ```cpp // compile: g++ -std=c++11 -o istreamexample istreamexample.cpp // run: ./istreamexample // description: formatted input with operator>> #include #include #include int main() { std::istringstream iss("42 hello 3.14"); int i; std::string s; double d; iss >> i >> s >> d; std::cout << "i=" << i << ", s=" << s << ", d=" << d << "\n"; return 0; } ```