在C语言中非0的数代表逻辑值“真”,一般用用数字1表示(也可以用其他值),0表示逻辑值“假”,只能用数字0表示。
在C语言标准(C89)没有定义布尔类型,所以C语言判断真假时以0为假,非0为真。
最新的C语言标准(C99)解决了布尔类型的问题。C99提供了_Bool 型,所以布尔类型可以声明为 _Bool flag。_Bool依然仍是整数类型,但与一般整型不同的是,_Bool变量只能赋值为0或1,非0的值都会被存储为1。
C99还提供了一个头文件 <stdbool.h> 定义了bool代表_Bool,true代表1,false代表0。只要导入 stdbool.h ,就能非常方便的操作布尔类型了。
例如:bool flag = false;
扩展资料
1、逻辑真和假按位与进行"与"运算。运算规则:
0&0=0;
0&1=0;
1&0=0;
1&1=1;
2、逻辑真和假按位进行"或"运算。运算规则:
0|0=0;
0|1=1;
1|0=1;
1|1=1;
C语言中的逻辑值“真”是用T表示(True,真) 值,逻辑值“假”是用 F(False,假)。
在编程语言中表示 T(True,真) 值和 F(False,假)值的数据类型叫做布尔类型,在 C 语言中通常用 int 类型来表示,非 0 表示 T,0 表示 F。
布尔逻辑是写程序的基本功之一,程序中的很多错误都可以归因于逻辑错误。以下是一些布尔代数的基本定理,为了简洁易读,T 和 F 用 1 和 0 表示,|| 用 + 号表示,x、y、z 的值可能是 0 也可能是 1 。
扩展资料
常用的逻辑运算符还有 “||”表示“或者”,对于表达式 a||b,“a 或者 b 成立”就为真,也就是说 a 和 b 只要有任意一个成立,a||b 就为真。
比如,a=5,表达式 a>0 || a<-1 的结果为真,因为 5>0,即使 5<-1 不成立,整个表达式也为真。还有“!”表示“反”,对于表达式 !a,a 为真时,!a 为假;a为假时,!a 为真。
本回答被网友采纳逻辑值只有两个值,即true(真)和false(假),在C语言中true用1表示,false用0表示。
需要注意的是,在C语言中并没有逻辑数据类型,在需要保存逻辑值时,可以用整型类型保存。例如:
int x=10,y=20;
int c = (x>y);//x>y此表达式为假,则整个表达式的值为0,即c变量的值为0;
printf(“c=%d\n”,c);//结果:c=0
扩展资料:
运算注意事项
当表达式进行&&运算时,只要有一个为假,总的表达式就为假,只有当所有都为 真时,总的式子才为真。当表达式进行||运算时,只要有一个为真,总的值就为真,只有当所有的都为假时,总的式子才为假。
逻辑非(!)运算是把相应的变量 数据转换为相应的真/假值。若原先为假,则逻辑非以后为真,若原先为真,则逻辑非以后为假。
本回答被网友采纳