当前位置: 代码迷 >> C语言 >> 初学者提问:bool型的定义和运算怎么回事啊?
  详细解决方案

初学者提问:bool型的定义和运算怎么回事啊?

热度:181   发布时间:2007-08-06 11:39:50.0
初学者提问:bool型的定义和运算怎么回事啊?
请问:bool型的定义和运算是怎么回事呢?或者在什么地方可以找到这个,是什么书呢?
谢谢。是个琐碎的问题,谢谢大家了!!
搜索更多相关的解决方案: bool  定义  运算  提问  

----------------解决方案--------------------------------------------------------
就是真与假的运算,因为它占用空间小,因而对判定性问题常用bool
----------------解决方案--------------------------------------------------------
那怎么定义呢,能举个例子吗?谢谢

----------------解决方案--------------------------------------------------------
以下是引用蒹葭在2007-8-6 11:55:20的发言:
那怎么定义呢,能举个例子吗?谢谢

蒹葭苍苍,白露为霜:)
bool就是很简单的啊,只有两个直1和0
举个例子
如果你想输出0-100被的所有能被5整除的数,可以定义个bool变量i
如果能被5整除,就使i=1;
else i=0
然后,输出i==1的时候所对应的数字


----------------解决方案--------------------------------------------------------
这样定义
bool i;//bool是关键字,相当于int float一样的


----------------解决方案--------------------------------------------------------

bool i;那么i=false(0)或者i=true(1);它只能等于这两个值!!


----------------解决方案--------------------------------------------------------
以下是引用viky2003在2007-8-6 14:33:26的发言:

bool i;那么i=false(0)或者i=true(1);它只能等于这两个值!!

那i只是个返回值吗?


----------------解决方案--------------------------------------------------------
这和返回值没有关系,如int i;你能说i是返回值吗??
其实int和bool一样,只是bool很少用于计算,而是判断而已!!
----------------解决方案--------------------------------------------------------

布尔型的返回值不一定是1或0;也可以是ture或false


----------------解决方案--------------------------------------------------------
以下是引用bupthehe在2007-8-6 12:00:21的发言:
这样定义
bool i;//bool是关键字,相当于int float一样的

你这样不一定行的,因为布尔函数是C99里的,一般的编译器不一定支持,最好这样写
enum Bool{false,true};
typedef enum Bool bool;
这样你就把bool定义为一个数据类型了,

定义这个数据类型的原因正是孔明说的,为了节省空间;
因为这个数据类型只要一位就行,要么1,要么0
其他的数据类型,比如char要8位
int要16位或者32位

许多场合只需要判断是或者否,
比如判断一个字符串name[]里面有没有a这个字母,那么可以这样定义
bool IfAIn(char *name,'a')
{
if(strchr(name,'a')!=NULL)
return true;
else
return false;
}


----------------解决方案--------------------------------------------------------
  相关解决方案