在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语言里没有真正意义的逻辑值。通常一个表达式的逻辑值是这样判断的:当一个表达式的值不为0时,逻辑值就为1;只有表达式的值为0时才是0.
=!是将运算符右边的表达式的逻辑值取相反值,然后赋予左边的变量。
! 运算符的作用就是求表达式的逻辑值的相反值。
用途:通常逻辑值用于条件运算和有条件的循环运算。
当一个条件语句或条件循环语句的逻辑值为1时,它包含的运算表达式才会执行;
当然,也可以参与数学运算,不过这种用途很少见;因为没有什么实际意义。但是作为程序是合法的。
剩下的你自己判断吧。
c语言中,关系表达式和逻辑表达式的值是0或1。
逻辑表达式的值是一个逻辑值,即"true"或"false"。C言语编译体系在给出逻辑运算效果时,以数字1示意"真",以数字0示意"假",但在推断一个量是不是为"真"时,以0示意"假",以非0示意"真"。
因为浮点数在计算机中不能异常正确地示意,所以,推断两个浮点数是不是相同时,一般不运用关联运算符"即是"(==),而是应用区间推断方法来完成。
扩展资料:
C语言中提供了三种逻辑运算符:
&&:与运算。
|| :或运算。
! :非运算,与运算符&&和或运算符||均为双目运算符。
具有左结合性。非运算符!为单目运算符,具有右结合性。
逻辑运算符和其它运算符优先级的关系可表示如下: !(非)→&&(与)→||(或)