C++ 布尔值
C++ 布尔值
在编程中,您经常需要一种只能有两个值之一的数据类型,比如:
- 是 / 否
- 开 / 关
- 真 / 假
为此,C++ 提供了一种 bool 数据类型,它可以取值 true(1)或 false(0)。
布尔值
布尔变量用 bool 关键字声明,并且只能取值 true 或 false:
实例
bool isCodingFun = true; bool isFishTasty = false; cout << isCodingFun; // 输出 1 (true) cout << isFishTasty; // 输出 0 (false)
从上面的例子可以看出,true 值返回 1,false 返回 0。
使用 boolalpha 打印 true/false
如果您更喜欢将 true 和 false 打印为单词而不是 1 和 0,可以使用 boolalpha 操纵器:
实例
bool isCodingFun = true; bool isFishTasty = false; cout << boolalpha; // 启用打印 "true"/"false" cout << isCodingFun << "\n"; // 输出 true cout << isFishTasty << "\n"; // 输出 false
注意:boolalpha 不是数据类型。它是一个 I/O 操纵器 - 一种改变 cout 显示布尔值方式的设置。当您使用它时,您是在告诉 cout:"从现在开始,将布尔值打印为 true 和 false,而不是 1 和 0。"
使用 noboolalpha 重置
如果您想回到默认行为(打印 1 和 0),可以使用 noboolalpha:
实例
bool isCodingFun = true; cout << boolalpha; // 打印为 true/false cout << isCodingFun << "\n"; // 输出 true cout << noboolalpha; // 重置为 1/0 cout << isCodingFun << "\n"; // 输出 1
注意:您可以根据自己的喜好选择默认的 1 和 0,还是单词 true 和 false。两者在 C++ 中都是正确的,您可以使用 boolalpha 和 noboolalpha 在它们之间切换。
提示:您可以在我们的 C++ cout 对象参考 中阅读更多关于 cout 及其操纵器的信息。
在上面的例子中,我们使用了固定的布尔值。但在实际程序中,布尔值通常是比较值或变量的结果,您将在下一章中了解更多相关信息。