C语言的逻辑运算和按位运算怎么区分?

~

1、作用的不同

&&、||是逻辑运算符,用于从左到右求表达式的真值。假设x=1;y=2;那么x&&y=1;x||y=1。

&、|是位运算符,是对x,y进行位运算,x,y取值如上,那么有x&y=0;(x的二进制表示为00,y的二进制表示为10)。

2、判断这个表达式的真或假的不同

&和|既是逻辑运算符也是位运算符,而&&和||只是逻辑运算符。

当&与&&同为逻辑运算符时,它们都用于连接两个Boolean类型的表达式,当&和&&的两端表达式同时为真时,表达式的结果为真,只要有一端为假,那么表达式结果为假。

例:3>5&3>2;3>5&&3>2;

当|和||的两端表达式同时为假时,表达式的结果为假,只要有一端为真,那么表达式结果为真。

3、计算方式不同

当使用&运算符:计算机在判断表达式的值的时候,先判断3>5的值为假,然后再判断3>2的结果为真,于是最后的结果是假&真为假;

但是当我们使用&&运算符的时候:计算机先判断3>5的值为假,此时表达式的结果一定为假,所以计算机就不再往下判断了,判定表达式结果为假。



逻辑与:&& 按位与:&
逻辑或:|| 按位或:|

逻辑运算是指表达式返回值的运算,这里的值只有真与假;按位运算是指数值转换为二进制后的位运算,每位是0或1

真 逻辑与 真 结果为真
真 逻辑与 假 结果为假

1 按位与 1 结果为1
1 按位与 0 结果为0

  1. 可以按照符号的不同来区分,C语言中逻辑运算符和按位运算符的符号是不一样的

  2. C语言中提供了三种逻辑运算符:&&(与运算),  ||(或运算),  !(非运算)

    与运算符(&&)和或运算符(||)均为双目运算符。具有左结合性。非运算符(!)为单目运算符,具有右结合性

  3. C语言提供了六种位运算符:
    &               |                ^             ~        <<         >>    

    按位与    按位或    按位异或      取反         左移      右移



逻辑运算使用的是逻辑运算符,通常是双个符号的,而按位运算则是按位运算符,通常是单个符号的

逻辑运算,用逻辑操作符,

按位运算,就是操作0和1

C语言的逻辑运算和按位运算怎么区分?
答:1、作用的不同 &&、||是逻辑运算符,用于从左到右求表达式的真值。假设x=1;y=2;那么x&&y=1;x||y=1。&、|是位运算符,是对x,y进行位运算,x,y取值如上,那么有x&y=0;(x的二进制表示为00,y的二进制表示为10)。2、判断这个表达式的真或假的不同 &和|既是逻辑运算符也是位...

C语言中的按位运算符和逻辑运算符?
答:&&是逻辑与,计算机的逻辑无非两种,0和非0,7和8都是非0,那么7&&8就是非0,也就是真了。&是位操作,即按两个操作数的二进制每一位进行与运算 7的二进制:00000111 8的二进制:00001000 与运算后为:00000000,结果就是假了

c语言中的运算符有哪些?
答:2. 关系运算符:包括相等运算符(==)、不等运算符(!=)、大于运算符(>)、小于运算符(<)、大于等于运算符(>=)和小于等于运算符(<=)。3. 逻辑运算符:包括逻辑与运算符(&&)、逻辑或运算符(||)和逻辑非运算符(!)。4. 位运算符:包括按位与运算符(&)、按位或运算符(|)...

C语言中,&和&&有什么区别,|和||有什么区别
答:逻辑运算与按位运算,不一样的两种运算。按位运算是把整数的每个二进制位与另一个整数对应的每个二进制位进行运算,是整数到整数的运算。逻辑运算其实是布尔值到布尔值的运算,只不过在C当中,所有非零整数都理解true,所有0都理解为false。所以4 && 2 == 1,其实是4是true,2也是true,与的结果是...

C语言提供3种逻辑运算符,按优先级高低它们分别是
答:C语言提供三种逻辑运算符,按优先级高低它们分别是:逻辑非(!),逻辑与(&&)、逻辑或(||)。运算规则:&&:当且仅当两个运算量的值都为“真”时,运算结果为“真”,否则为“假”。|| :当且仅当两个运算量的值都为“假”时,运算结果为“"假”,否则为“真”。! :当运算量的值为“真”...

学习C语言
答:逻辑运算符返回真或假(c语言里用0表示假,非0表示真)3||5 他的值是 真(非0)3&&0 的值为假(0)一般用在条件判断中 if(!3),3是真(非0),!3就是假。位运算符 按位与 3&7,先转换成二进制 011 & 111 都为1的位结果是1,否则是0,运算后的结果是 011(3).也就是...

c语言的按位运算符怎么操作!?
答:一、位运算符C语言提供了六种位运算符:& 按位与 | 按位或 ^ 按位异或 ~ 取反 << 左移 >> 右移 1. 按位与运算 按位与运算符"&"是双目运算符。其功能是参与运算的两数各对应的二进位相与。只有对应的两个二进位均为1时,结果位才为1 ,否则为0。参与运算的数以补码方式出现。例如:9...

单片机C语言&和&&有何区别?
答:楼上正解!&是按位与 &&是逻辑与,它们的运算法则不同~~

在C语言中有“按位与”和“逻辑与”,前者是指什么啊?
答:按位与: 运算符查看两个表达式的二进制表示法的值,并执行按位“与”操作。该操作的结果如下所示: 0101 (expression1) 1100 (expression2) --- 0100 (result) 任何时候,只要两个表达式的某位都为 1,则结果的该位为 1。否则,结果的该位为 0。 逻辑与: 当且仅当两个表达式的值都等于 ...

c语言中 4&&5的值为什么是1 4&5的值是多少 逻辑与和按位与有什么...
答:因为4和5都是非0值。非0即为真。真真得真。所以结果为1。4&5的值为4。这里4的二进制是shu“100”,5的二进制是“101”。按位与就是100&101=100(即十进制为4);&&是逻辑运算符,两个结果中有一个0结果才是0,比如0&&1,结果是0;1&&0,结果也是0。还有一个&是位运算符。

IT评价网,数码产品家用电器电子设备等点评来自于网友使用感受交流,不对其内容作任何保证

联系反馈
Copyright© IT评价网