C++ ユーザー入力文字列
ユーザー入力文字列
cinで抽出演算子 >> を使用して、ユーザーが入力した文字列を保存することができます。
例
string firstName;
cout << "Type your first name: ";
cin >> firstName; // get user input from the keyboard
cout << "Your name is: " << firstName;
<strong>// Type your first name: John</strong>
<strong>// Your name is: John</strong>
cinはスペース(空白、タブなど)を終了文字と見なします。つまり、格納できる単語は1つだけです (例え多数の単語を入力したとしても)。
例
string fullName;
cout << "Type your full name: ";
cin >> fullName;
cout << "Your name is: " << fullName;
<strong>// Type your full name: John Doe
// Your name is: John</strong>
上の例から、プログラムは"John Doe"を出力すると予想されますが、実際には"John"のみが出力されます。 そのため、文字列を扱うときは、getline() 関数を使用してテキスト行を読み取ることがよくあります。 最初のパラメータとしてcinをとり、2番目のパラメータとして文字列変数を受け取ります。
例
string fullName;
cout << "Type your full name: ";
getline (cin, fullName);
cout << "Your name is: " << fullName;
// Type your full name: John Doe
// Your name is: John Doe