C ブール値
ブール値
プログラミングでは、次のような 2 つの値のうち 1 つだけを持つことができるデータ型が必要になることがよくあります。
- YES / NO
- ON / OFF
- TRUE / FALSE
このため、C にはブール値
として知られるブール データ型
があります。
ブール値は、true
または false
のいずれかの値を表します。
ブール変数
C では、bool
型は int
や char
のような組み込みデータ型ではありません。
これは C99 で導入されたもので、使用するには次のヘッダー ファイルをインポートする必要があります。
#include <stdbool.h>
bool
キーワードを使用して宣言され、true
または false
の値のみを取ることができます。
bool isProgrammingFun = true;
bool isFishTasty = false;
ブール変数を表示する前に、ブール値が整数として返されることを知っておく必要があります。
1
(または 0 以外の数字) は、true(真)
0
はfalse(偽)
を表します
したがって、ブール値を出力するには、%d
形式指定子を使用する必要があります。
例
// bool変数を作成する
bool isProgrammingFun = true;
bool isFishTasty = false;
// bool値を返す
printf("%d", isProgrammingFun); // 1 (true) を返します
printf("%d", isFishTasty); // 0 (false) を返します
値と変数の比較
値の比較は、答えを見つけて決定を下すのに役立つため、プログラミングに役立ちます。
たとえば、大なり演算子 (>
)などの比較演算子を使用して、2 つの値を比較できます。
上の例から、戻り値がブール値 (1) であることがわかります。
2 つの変数を比較することもできます。
以下の例では、等号 (==
) 演算子を使用して、異なる値を比較します。
例
printf("%d", 10 == 10); // 10は10に等しいため、1 (true) を返します。
printf("%d", 10 == 15); // 10は15に等しくないため、0 (偽) を返します。
printf("%d", 5 == 55); // 5は55に等しくないため、0 (偽) を返します。
例
bool isHamburgerTasty = true;
bool isPizzaTasty = true;
// ハンバーガーとピザはどちらもおいしいか調べてみましょう
printf("%d", isHamburgerTasty == isPizzaTasty);
bool 変数を使用する場合は、必ず
実際の例
ある人が投票できる年齢に達しているかどうかを調べる必要がある「実際の例」を考えてみましょう。
以下の例では比較演算子(>= )を使用して、年齢 (25
) が投票年齢制限 (18
歳に設定されている) より大きいか、等しいかどうかを確認します。
例
int myAge = 25;
int votingAge = 18;
printf("%d", myAge >= votingAge); // 1 (true) を返します。これは、25歳が投票できることを意味します。
if...else
ステートメントでラップして、結果に応じてさまざまなアクションを実行できるようにすることです。
例
myAge
が 18
以上の場合「Old enough to vote!(投票するのに十分な年齢です!)」を出力します。そうでない場合は、「Not old enough to vote.(投票するには年齢が足りません。)」と出力します。
int myAge = 25;
int votingAge = 18;
if (myAge >= votingAge) {
printf("Old enough to vote!");
} else {
printf("Not old enough to vote.");
}
ブール値はすべての比較と条件の基礎です。
詳しくは次の章で。
プログラミング学習を加速させる
プログラミングをプロの講師に教えてもらいませんか。