C自定义bool类型
在标准的 C语言中并未定义 bool 类型,如果需要使用 bool 类型,程序员可以通过宏定义来自定义一个 bool 类型,定义语句如下:
#define bool int
#define false 0
#define true 1
也就是将 int
型定义为 bool
型,将 int 型的 0
和 1
两个值分别定义为 bool
类型的两个值 true
和 false
。
C++中的bool类型
布尔类型(bool)是 C++ 新增的一种基本数据类型,C++ 中对 bool 类型已经做出了定义。在 80x86 处理器上编译器 gcc 4.8.1 和 Visual C++ 2012 给 bool 类型变量分配 1byte
。bool 类型取值范围有两个值:true
和 false
。(或者 0
和 非零
,默认非零即为 ture)
例一
#include<iostream>
using namespace std;
int main(int argc,char *argv[])
{
int a=(1>2);
bool b=(1>2);
bool c=true;
bool d=-1;
cout<<a<<endl; //0
cout<<b<<endl; //0
cout<<c<<endl; //1
cout<<d<<endl; //1
}
例二
//cin 连续输入示例
#include<iostream>
using namespace std;
int main()
{
int sum = 0;
int val = 0;
cout<<"Please input a number :"<<endl;
while(cin>>val)
{
sum += val;
cout<<"Please input next number :"<<endl;
}
cout<<"The sum of all number is sum = "<<sum<<endl;
return 0;
}
这个程序从标准输入中不断地读取数据并存入到 val 变量中,每读入一个数据就求一次和,直至用户输入文件结束符标识( ctrl+z+回车
)时,程序才会输出之前用户输入所有数据之和(这里输入0 不会判别为 false )。
Java中的Boolean类型
Java中 boolean
类型的值只有两个值:true
和 false
,不能赋值 0
和 非零
值。
Boolean a=-1; //错误
int b=(1>2); //错误
Boolean c=(1>2); //正确