最終更新日時: 2026年04月26日 11時51分27秒 (JST)
Koichi Murase が更新

履歴 編集

variable
<iostream>

# std::cin

    namespace std {
      extern istream cin;
    }

## 概要

`cin` は、標準入力に対する入力ストリームオブジェクトである。

すなわち、`std::basic_streambuf`から派生していて`<cstdio>`の`stdin`オブジェクトに結びつけられているストリームバッファから入力を受ける。

本オブジェクトは、初期化が完了すると `tie()` が `&cout` を返すようになる。
その他の状態は、`basic_ios::init` の事後条件と同様である。

`cin`は`character input`を意味する。[1]

## 例

    #include <iostream>
    #include <string>

    int main()
    {
      std::cout << "名前を入力してください: ";

      std::string s;     // std::cin.tie() == &std::cout であるため、
      std::cin >> s;     // std::cout を明示的に flush しなくても
                         // 上記の出力が flush されることが保証されている

      std::cout << "あなたの名前は「" << s << "」ですね。" << std::endl;
    }

### 出力例

    名前を入力してください:cpprefjp
    あなたの名前は「cpprefjp」ですね

## バージョン

### 言語

- C++98

## 出典

1. ^ Stroustrup: C++ Style and Technique FAQ(2018-08-21 17:01 JST 閲覧)

## 関連項目

- `wcin`
- `cout`