目次
はじめに
C++のプログラムで、ユーザーに数値を入力してもらったり、名前を打ち込んでもらったりと、キーボードからの入力を受け取りたい場面は必ずあります。この標準的な入力機能を提供するのが、<iostream>
ヘッダーで定義されているstd::cin
(character input の略) です。
cin
から、ストリーム抽出演算子 (>>
) を使って、ユーザーが入力したデータを変数に「抽出する(取り出す)」ことで、入力の受け取りが行われます。
この記事では、cin
を使った基本的な入力の受け取り方を解説します。
cin
を使ったサンプルコード
このコードは、ユーザーに年齢の入力を促し、入力された数値を整数型の変数に格納して、その結果を画面に出力します。
完成コード
#include <iostream>
// using namespace std; を使うと、毎回 std:: と書かなくてよくなる
using namespace std;
int main() {
// 1. 入力された値を格納するための変数を準備
int age;
// 2. ユーザーに入力を促すメッセージを表示
cout << "あなたの年齢を入力してください: ";
// 3. >> 演算子で、cinから変数に入力
cin >> age;
// 4. 入力された値を表示して確認
cout << "あなたの年齢は " << age << "歳ですね。" << endl;
return 0;
}
コードの解説
cin >> age;
これが cin
の最も基本的な使い方です。
cin
: 標準入力(通常はキーボード)を表すオブジェクトです。>>
: ストリーム抽出演算子。左側のストリーム(cin
)からデータを取り出し、右側の変数(age
)に格納するという意味です。- 動作:
- プログラムはこの行で停止し、ユーザーからのキーボード入力を待ちます。
- ユーザーが数値を入力し、
Enter
キーを押します。 cin
は、入力された文字列を、代入先の変数age
の型(この場合はint
)に合わせて自動的に解釈・変換し、変数に格納します。
エラーハンドリング
もし、int
型の変数を待っているところに、ユーザーが "abc"
のような文字列を入力した場合、cin
はエラー状態になります。if (cin >> age)
のように、if
文の条件式として使うことで、入力が成功したかどうかを判定できます。
C++
if (cin >> age) {
// 入力が成功した場合の処理
} else {
// 入力が失敗した場合の処理
}
まとめ
今回は、C++の標準入力 std::cin
の基本的な使い方を解説しました。
<iostream>
ヘッダーをインクルードする。std::cin
オブジェクトから、>>
演算子を使って変数に値を読み込む。cin
は、読み込んだ文字列を変数の型に合わせて自動で変換してくれる。
cin
は、プログラムを対話的にし、ユーザーからのデータを受け取るための、最もシンプルで不可欠なツールです。