C++中的布尔类型
C++在C语言的基本类型系统之上增加了bool
C++中的bool可取的值只有true和false
理论上bool只占用一个字节,
如果多个bool变量定义在一起,可能会各占一个bit,这取决于编译器的实现
true代表真值,编译器内部用1来表示
false代表非真值,编译器内部用0来表示
bool类型只有true(非0)和false(0)两个值
C++编译器会在赋值时将非0值转换为true,0值转换为false
#include<iostream>
using namespace std;
int main()
{
bool a = true;
bool b = false;
cout<<"a1 = "<<a<<endl<<"b = "<<b<<endl;
cout<<"size = "<<sizeof(a)<<endl;
int c = 2;
a = c;
cout<<"a2 = "<<a<<endl;
a++;
cout<<"a3 = "<<a<<endl;
a = a - 1;
cout<<"a4 = "<<a<<endl;
a = -1;
cout<<"a5 = "<<a<<endl;
return 0;
}
执行结果:
a1 = 1
b = 0
size = 1
a2 = 1
a3 = 1
a4 = 0
a5 = 1
请按任意键继续. . .