C++中的布尔类型

布尔类型对象可以被赋予文字值true或者false,所对应的关系就是真与假的概念。
  我们通常使用的方法是利用他来判断条件的真与假,例如下面的代码:
#include <iostream> 
using namespace std; 
 
void main(void) 

    bool found = true; 
    if (found) 
    { 
        cout << "found条件为真!" << endl; 
    } 
 
}
  但是一些概念不清的人却不知道布尔类型的对象也可以被看做是一种整数类型的对象,但是他不能被声明成signed,unsigned,short long,如果你生成(short bool found=false;),那么将会导致编译错误。
  其为整数类型的概念是这样的:
  当表达式需要一个算术值的时候,布尔类型对象将被隐式的转换成int类型也就是整形对象, false就是0,true就是1,请看下面的代码!
#include <iostream> 
#include <string> 
using namespace std; 
 
void main(void) 

bool found = true; 
int a = 1; 
cout << a + found << endl; 
cin.get(); 
}
  a+found 这样的表达式样是成立的,输出后的值为2进行了加法运算!
  那么说到这里很多人会问指针也可以吗?回答是肯定的这样一个概念对于指针同样也是有效的,下面我们来看一个将整形指针对象当作布尔对象进行使用的例子:
#include <iostream> 
using namespace std; 
 
void main(void) 

    int a = 1; 
    int *pi; 
    pi=&a; 
 
    if (*pi) 
    { 
        cout << "*pi为真" << endl; 
    } 
    cin.get(); 
}
  上面代码中的*pi进行了隐式样的布尔类型转换表示为了真也就是true。


(文/管宁  出处/太平洋电脑网)

 感谢原创者的辛勤劳动,希望对您有所帮助,转载请注明原出处。
 您可能对 [C & C++] 的这些文章也感兴趣:

C++中的健壮指针和资源管理
Windows下GTK+的配置
Symbian编程总结-图形图像篇-打开非Bitmap类型的图像
轻轻松松C to C++
轻轻松松C to C++ (三)
利用C++实现的贪吃蛇游戏
C++数据结构学习:二叉树(4)
C++数据结构学习:二叉树(1)
C语言中的三大定律
Symbian编程总结-基础篇-类类型(转)