C++の比較演算子を完全解説!初心者でもわかる == != < > <= >= の使い方
生徒
「C++のプログラムを見ていると、イコールが二つ並んでいたり、矢印みたいな記号が出てきます。これは何をしているんですか?」
先生
「それは比較演算子といって、二つの値を比べるための記号です」
生徒
「比べるというのは、大きいか小さいかを調べるということですか?」
先生
「その通りです。数字や条件を比べて、正しいかどうかを判断するために使います」
1. 比較演算子とは?
C++の比較演算子は、二つの値を比べて結果を判断するための仕組みです。 人が日常生活で、大きい、小さい、同じかどうかを見比べるのと同じ役割をします。 プログラムは自分で考えることができないため、 比較演算子を使って条件を与え、 正しいか間違っているかを判断させます。 この判断結果は、真か偽のどちらかになります。
2. 等しいかを調べる「==」
「==」は、左右の値が同じかどうかを調べる比較演算子です。 普段使うイコールとは意味が違い、 代入ではなく比較を行います。 二つの数値や文字が完全に同じ場合に、 正しいという結果になります。
int a = 10;
int b = 10;
if (a == b) {
std::cout << "同じ数です" << std::endl;
}
同じ数です
3. 等しくないことを調べる「!=」
「!=」は、二つの値が違っているかどうかを調べます。 見た目は少し難しく感じますが、 等しくないという意味を持つ記号です。 同じでなければ正しい、 という判断をしたいときに使います。
int x = 5;
int y = 8;
if (x != y) {
std::cout << "違う数です" << std::endl;
}
違う数です
4. 大きい・小さいを調べる「<」「>」
「<」と「>」は、数の大小を比べる比較演算子です。 左右の数を見比べて、 どちらが大きいか小さいかを判断します。 学校の算数で使う記号と同じ意味なので、 直感的に理解しやすいのが特徴です。
int age = 15;
if (age < 18) {
std::cout << "未成年です" << std::endl;
}
未成年です
5. 以上・以下を調べる「<=」「>=」
「<=」と「>=」は、 大小の比較に等しい条件を加えた演算子です。 例えば、十八以上や、 十以下といった条件を表すことができます。 境界の値も含めたい場合に、 とてもよく使われます。
int score = 60;
if (score >= 60) {
std::cout << "合格です" << std::endl;
}
合格です
6. 比較演算子と条件分岐の関係
比較演算子は、 条件分岐と一緒に使われることがほとんどです。 条件が正しいかどうかによって、 実行する処理を切り替えます。 プログラムに判断力を持たせるために、 比較演算子は欠かせない存在です。
7. 初心者が間違えやすいポイント
比較演算子で特に多い間違いは、 「=」と「==」を混同してしまうことです。 一つのイコールは代入、 二つ並んだイコールは比較という違いがあります。 また、条件を複雑にしすぎると、 自分でも結果が分からなくなるため、 最初は単純な比較から慣れることが大切です。
8. 比較演算子を使う考え方
比較演算子は、 人が日常的に行っている判断を、 プログラムに伝えるための道具です。 同じか、違うか、大きいか、小さいかを、 言葉ではなく記号で表現します。 この考え方に慣れると、 C++のコードが読みやすくなり、 プログラムの動きも理解しやすくなります。