C 布尔值
布尔值
在编程中,你经常需要一种只能有两个值的数据类型,例如:
- 是 / 否
- 开 / 关
- 真 / 假
为此,C 语言提供了一个 bool
数据类型,这被称为布尔值。
布尔值表示 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 isProgrammingFun = true;
bool isFishTasty = false;
// 返回布尔值
printf("%d", isProgrammingFun); // 返回 1 (true)
printf("%d", isFishTasty); // 返回 0 (false)
自己动手试一试 »
然而,通过比较值和变量来返回布尔值更为常见。
比较值和变量
在编程中,比较值非常有用,因为它可以帮助我们找到答案并做出决策。
例如,您可以使用 比较运算符,例如大于 (>
) 运算符,来比较两个值
从上面的示例中,您可以看到返回值是布尔值 (1
)。
您也可以比较两个变量
在下面的示例中,我们使用等于 (==
) 运算符来比较不同的值
示例
printf("%d", 10 == 10); // 返回 1 (true),因为 10 等于 10
printf("%d", 10 == 15); // 返回 0 (false),因为 10 不等于 15
printf("%d", 5 == 55); // 返回 0 (false),因为 5 不等于 55
自己动手试一试 »
您不仅限于比较数字。您还可以比较布尔变量,甚至可以比较特殊结构,如 数组(您将在后面的章节中学习更多有关数组的内容)。
示例
bool isHamburgerTasty = true;
bool isPizzaTasty = true;
// 找出汉堡和披萨是否都美味
printf("%d", isHamburgerTasty == isPizzaTasty);
自己动手试一试 »
记住,在使用 bool
变量时,要包含 <stdbool.h>
头文件。