C语言中提供了三种逻辑运算符:&&(与运算),
||(或运算),
!(非运算)
与运算符(&&)和或运算符(||)均为双目运算符。具有左结合性。非运算符(!)为单目运算符,具有右结合性
C语言提供了六种位运算符:
&
|
^
~
<<
>>
按位与
按位或
按位异或
取反
左移
右移
单片机C语言中逻辑或:整个数进行或运算。按照非零的就是1,那么P2 = P2||0x0f,当p2不为0x00h,则,不管后面的数是多少,结果都是1。按位或:就是每一个相对应的位,进行或运算。java中当用于条件的时候,&不短路,&&短路。
C++中二者毫无关系~
“||”
其它常用运算符:
1、移位运算符
<<左移运算符;>>右移运算符。
2、关系运算符
<、<=、>、>=关系运算符。
3、相等运算符
“ == ”等于运算符;“ != ”不等于运算符。
4、位与运算符
“ &”按位与运算符
5、位异或运算符
“ ∧ ”按位异或运算符(Bitwise exclusive OR operator)。
6、逻辑与运算符
“&&”逻辑与运算符。
扩展资料
运算符的特性——
1、优先级:
C语言中,运算符的运算优先级共分为15 级。1 级最高,15 级最低。 在表达式中,优先级较高的先于优先级较低的进行运算。而在一个运算量两侧的运算符 优先级相同时,则按运算符的结合性所规定的结合方向处理。
2、结合性:
C语言中各运算符的结合性分为两种,即左结合性(自左至右)和右结合性(自右至左)。例如算术运算符的结合性是自左至右,即先左后右。如有表达式x-y+z 则y 应先与“-”号结合,执行x-y 运算,然后再执行+z 的运算。