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)运行实例 »
点击 "运行实例" 按钮查看在线实例
然而,更常见的是通过比较值和变量来返回布尔值。
比较值和变量
在编程中,比较值是非常有用的,因为它帮助我们找到答案并做出决策。
例如,你可以使用比较运算符,如大于 (>
) 运算符,来比较两个值:
实例
printf("%d", 10 > 9); // 返回 1(真),因为 10 大于 9运行实例 »
点击 "运行实例" 按钮查看在线实例
从上面的例子中,您可以看到返回值是一个布尔值(1
)。
您还可以比较两个变量:
实例
int x = 10; int y = 9; printf("%d", x > y);运行实例 »
点击 "运行实例" 按钮查看在线实例
在下面的例子中,我们使用等于 (==
) 运算符来比较不同的值:
实例
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>
头文件。