C++での標準入力の基本
C++では、cin
というオブジェクトを使用して標準入力を取得します。cin
はiostream
ライブラリに含まれているため、これを使用するにはプログラムの先頭で#include <iostream>
を記述する必要があります。
以下に、整数を一つ入力し、その値を出力する基本的なC++のコードを示します。
#include <iostream>
int main() {
int num;
std::cin >> num;
std::cout << "You entered: " << num << std::endl;
return 0;
}
このコードでは、cin
オブジェクトと抽出演算子(>>
)を使用して、ユーザーからの入力をnum
という名前の変数に格納しています。その後、cout
オブジェクトと挿入演算子(<<
)を使用して、入力された値を出力しています。
このように、C++での標準入力は非常に直感的で、さまざまなデータ型に対応しています。ただし、入力のエラーチェックやバリデーションについては、別途考慮する必要があります。これについては、後続のセクションで詳しく説明します。
キーボードからの入力の取得
C++では、cin
オブジェクトを使用してキーボードからの入力を取得します。これは、ユーザーがキーボードを使用してデータをプログラムに直接入力する場合に使用されます。
以下に、キーボードからの文字列の入力を取得し、その値を出力する基本的なC++のコードを示します。
#include <iostream>
#include <string>
int main() {
std::string str;
std::cout << "Please enter a string: ";
std::cin >> str;
std::cout << "You entered: " << str << std::endl;
return 0;
}
このコードでは、cin
オブジェクトと抽出演算子(>>
)を使用して、ユーザーからの入力をstr
という名前の変数に格納しています。その後、cout
オブジェクトと挿入演算子(<<
)を使用して、入力された値を出力しています。
ただし、この方法ではスペースを含む文字列を正しく取得することができません。スペースを含む文字列を取得するには、getline
関数を使用します。
#include <iostream>
#include <string>
int main() {
std::string str;
std::cout << "Please enter a string: ";
std::getline(std::cin, str);
std::cout << "You entered: " << str << std::endl;
return 0;
}
このように、C++では様々な方法でキーボードからの入力を取得することが可能です。ただし、入力のエラーチェックやバリデーションについては、別途考慮する必要があります。これについては、後続のセクションで詳しく説明します。
入力データの判定
C++では、入力データの判定は非常に重要なプロセスです。これは、ユーザーからの入力が期待する形式や範囲に合っているかどうかを確認するために行われます。
以下に、整数が正の数であるかどうかを判定する基本的なC++のコードを示します。
#include <iostream>
int main() {
int num;
std::cout << "Please enter a number: ";
std::cin >> num;
if (num > 0) {
std::cout << "You entered a positive number." << std::endl;
} else {
std::cout << "You did not enter a positive number." << std::endl;
}
return 0;
}
このコードでは、if
文を使用して入力された数値が正の数であるかどうかを判定しています。正の数であれば、”You entered a positive number.”と出力し、そうでなければ”You did not enter a positive number.”と出力します。
ただし、このコードではユーザーが数値以外の入力をした場合のエラーハンドリングが行われていません。ユーザーが数値以外の入力をした場合、プログラムは予期しない動作をする可能性があります。このような状況を避けるためには、入力のバリデーションが必要です。
入力のバリデーションについては、後続のセクションで詳しく説明します。
複数のデータを一度に入力させる方法
C++では、cin
オブジェクトと抽出演算子(>>
)を使用して、複数のデータを一度に入力させることが可能です。これは、ユーザーが一度に複数のデータをプログラムに直接入力する場合に使用されます。
以下に、キーボードからの複数の整数の入力を取得し、その値を出力する基本的なC++のコードを示します。
#include <iostream>
int main() {
int num1, num2;
std::cout << "Please enter two numbers: ";
std::cin >> num1 >> num2;
std::cout << "You entered: " << num1 << " and " << num2 << std::endl;
return 0;
}
このコードでは、cin
オブジェクトと抽出演算子(>>
)を使用して、ユーザーからの入力をnum1
とnum2
という名前の変数に格納しています。その後、cout
オブジェクトと挿入演算子(<<
)を使用して、入力された値を出力しています。
ただし、この方法ではユーザーが数値以外の入力をした場合のエラーハンドリングが行われていません。ユーザーが数値以外の入力をした場合、プログラムは予期しない動作をする可能性があります。このような状況を避けるためには、入力のバリデーションが必要です。
入力のバリデーションについては、後続のセクションで詳しく説明します。
異なるデータ型の変数への入力
C++では、cin
オブジェクトを使用して、異なるデータ型の変数への入力を取得することが可能です。これは、ユーザーが一度に複数のデータをプログラムに直接入力する場合に使用されます。
以下に、キーボードからの整数と文字列の入力を取得し、その値を出力する基本的なC++のコードを示します。
#include <iostream>
#include <string>
int main() {
int num;
std::string str;
std::cout << "Please enter a number and a string: ";
std::cin >> num >> str;
std::cout << "You entered: " << num << " and " << str << std::endl;
return 0;
}
このコードでは、cin
オブジェクトと抽出演算子(>>
)を使用して、ユーザーからの入力をnum
とstr
という名前の変数に格納しています。その後、cout
オブジェクトと挿入演算子(<<
)を使用して、入力された値を出力しています。
ただし、この方法ではユーザーが数値以外の入力をした場合のエラーハンドリングが行われていません。ユーザーが数値以外の入力をした場合、プログラムは予期しない動作をする可能性があります。このような状況を避けるためには、入力のバリデーションが必要です。
入力のバリデーションについては、後続のセクションで詳しく説明します。