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

发布网友 发布时间:2022-04-23 04:06

我来回答

5个回答

好二三四 时间:2022-09-16 22:13

逻辑或:逻辑或是三种逻辑运算符。 逻辑或相当于生活中的或者,当两个条件中有任一个条件满足,逻辑或的运算结果就为真。

按位或:按位或运算符是双目运算符。其功能是参与运算的两数各对应的二进位相或。只要对应的二个二进位有一个为1时,结果位就为1。当参与运算的是负数时,参与两个数均以补码出现。

热心网友 时间:2024-03-08 03:54

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的值为假,此时表达式的结果一定为假,所以计算机就不再往下判断了,判定表达式结果为假。

热心网友 时间:2024-03-08 03:54

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

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

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

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

热心网友 时间:2024-03-08 03:55

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

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

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

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

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

热心网友 时间:2024-03-08 03:55

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

热心网友 时间:2024-03-08 03:56

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

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

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com