布尔变量

来源:互联网 发布:手机淘宝6.10.3 编辑:程序博客网 时间:2024/05/01 04:55
为了理解位操作操作符,首先需要了解整数是如何用二进制表示的。我们在第2.4节讨论了这一点——整数,并将在这里展开。


考虑一个正常的十进制数,例如5623。我们直观地理解这些数字是指(5×1000)+(6×100)+(2×10)+(3×1)。因为有10个十进制数,所以每个数字的值增加了10倍。

bool b1 = true; // copy initializationbool b2(false); // direct initializationbool b3 { true }; // uniform initialization (C++11)b3 = false; // assignment


二进制数的工作方式相同,只是因为只有2个二进制数(0和1),每个数字的值增加了2倍。就像逗号经常被用来使一个大的十进制数易于阅读(例如1427435),我们通常用4位的二进制数来写二进制数,使它们更易于阅读(例如1101 - 0101)。


作为提醒,在二进制中,我们从0到15这样计算:

123456789101112#include <iostream> int main(){    std::cout << true << std::endl; // true evaluates to 1    std::cout << !true << std::endl; // !true evaluates to 0     bool b(false);    std::cout << b << std::endl; // b is false, which evaluates to 0    std::cout << !b << std::endl; // !b is true, which evaluates to 1    return 0;



在现实生活中,问或被问到可以用“是”或“不是”回答的问题是很常见的。苹果是水果吗?“是的。“你喜欢吃芦笋吗?”“不,


现在考虑一个类似的说法:“苹果是一种水果”。这种说法是对的还是错的?这显然是真的。或者“我喜欢芦笋”怎么样?。绝对错误的(哇!)。


这类句子只有两种可能的结果:对/真,或不/假是如此普遍,许多编程语言都有一个特殊的类型来处理它们。该类型称为布尔类型。


布尔变量


布尔变量是只能有两个可能值的变量:真(1)和false(0)。


声明一个布尔变量,我们使用关键字bool。