介紹如何在C中使用布林值
C 最初並不原生支援布林值。
C99 是在 1999/2000 年發布的版本,引入了布林型別。
不過,要使用它,你需要匯入一個標頭檔,所以我不確定我們是否可以技術上稱之為 “原生”。無論如何,我們確實有一個 bool
型別。
你可以像這樣使用它:
#include <stdio.h>
#include <stdbool.h>
int main(void) {
bool isDone = true;
if (isDone) {
printf("完成\n");
}
isDone = false;
if (!isDone) {
printf("未完成\n");
}
}
如果你在編寫 Arduino 程式,你可以使用 bool
而不需要包含 stdbool
,因為 bool
是一個有效且內建的 C++ 資料型別,而Arduino 語言則是基於 C++。
在純 C 中,記得要 #include <stdbool.h>
,否則你在宣告和使用 bool
變數時會遇到一堆錯誤訊息:
➜ ~ gcc hello.c -o hello; ./hello
hello.c:4:3: error: use of undeclared identifier
'bool'
bool isDone = true;
^
hello.c:5:7: error: use of undeclared identifier
'isDone'
if (isDone) {
^
hello.c:8:8: error: use of undeclared identifier
'isDone'
if (!isDone) {
^
3 errors generated.