C語言 bool 型教學:基礎用法與實例解析(初學者到進階適用)

1. 介紹

C 語言是在學習程式設計基礎時非常重要的語言。其中,bool 型別是在條件判斷與迴圈等控制結構中不可或缺的資料型別。本文將介紹 C 語言中 bool 型的基本用法與實際範例,幫助初學者到中階開發者深入理解。

2. bool 型別是什麼

2.1 定義與特點

bool 型別僅能取兩個值:真(true)或假(false)。這稱為邏輯值,常用於程式的條件判斷與重複處理。在 C 語言中,bool 型是在 C99 標準後導入的。在此之前的版本則以整數型態來代替表示布林值。

2.2 C 語言中的 bool 型別導入

要在 C 語言中使用 bool 型別,需包含 <stdbool.h> 標頭檔。引入此標頭檔後,即可使用 booltruefalse 這些關鍵字。

#include <stdbool.h>

bool isProgrammingFun = true;
bool isFishTasty = false;

如上所宣告的 bool 變數,可以存放 truefalse 的值。

年収訴求

3. C 語言中 bool 型別的使用方式

3.1 宣告與初始化

宣告 bool 型別變數時,使用 bool 關鍵字,並常以 truefalse 進行初始化。

bool isProgrammingFun = true;
bool isFishTasty = false;

在上述範例中,isProgrammingFun 儲存 trueisFishTasty 儲存 false

3.2 bool 型別的輸出方式

在 C 語言中輸出 bool 型的值時,會以整數顯示。true 表示為 1false 表示為 0,因此使用 printf 輸出時需用 %d

printf("%d", isProgrammingFun);   // 輸出 1 (true)
printf("%d", isFishTasty);        // 輸出 0 (false)

請記得,bool 型的值在輸出時會顯示為 10

4. bool 型別與比較運算子

4.1 基本比較運算子

bool 型通常由比較運算子的條件式結果產生。常見的比較運算子包括 ><== 等。運用這些比較運算子,可讓條件式結果為 truefalse

printf("%d", 10 > 9);  // 輸出 1 (true)
printf("%d", 5 == 5);  // 輸出 1 (true)
printf("%d", 3 < 2);   // 輸出 0 (false)

4.2 實戰範例

以下為 if 判斷式的範例。如果條件式為 true,則執行區塊內的程式。

int x = 10;
int y = 9;

if (x > y) {
    printf("x 比 y 大
");
} else {
    printf("x 比 y 小或相等
");
}

此例中,因 x 大於 y,所以會輸出「x 比 y 大」。

5. 函式中的 bool 型別使用

5.1 作為回傳值的應用

bool 型別也常用作函式的回傳值。例如,可用來判斷某個數字是否為偶數的函式。

#include <stdbool.h>

bool isEven(int number) {
    return number % 2 == 0;
}

int main() {
    printf("%d
", isEven(4));  // 輸出 1 (true)
    printf("%d
", isEven(7));  // 輸出 0 (false)
    return 0;
}

此函式會在參數為偶數時回傳 true(1),奇數時回傳 false(0)。

5.2 應用範例

布林型別在表單驗證或安全性處理等多種情境中常用。例如用來檢查用戶輸入是否符合特定條件:

bool isValidAge(int age) {
    return age >= 18;
}

這個函式判斷年齡是否大於等於 18 歲。

6. bool 型別的進階應用

6.1 機器學習與人工智慧

布林型別在機器學習和人工智慧領域也常用於條件判斷。例如判斷某張圖片是否為貓,就可以用布林值來表示判斷結果。bool 型在確認條件是否成立時非常實用。

6.2 實際程式範例

以下為判斷投票年齡的實用程式碼範例:

int myAge = 25;
int votingAge = 18;

if (myAge >= votingAge) {
    printf("你已經符合投票年齡!
");
} else {
    printf("你尚未符合投票年齡。
");
}

本範例中,因 myAge 大於 votingAge,會輸出「你已經符合投票年齡!」。

7. 結論

bool 型別是在 C 語言中進行條件判斷和迴圈處理時不可缺少的資料型態。本文介紹了 bool 型的基本用法、與比較運算子的結合,以及在函式中的應用。善用這些知識,將能寫出更進階的 C 語言程式。

侍エンジニア塾