1. 算术运算符与圆括号的优先级比较
高 低 | |||
() | +,—(正,负号) | *,/,% | +,-(加,减号) |
同级 | 同级 | 同级 | |
单目运算符 | 双目运算符 | ||
2. 关系运算符的优先级
优先级 | 优先级相同(高) | 优先级相同(低) | ||||
关系运算符 | > (大于) | >= (大于等于) | < (小于) | <= (小于等于) | == (等于) | != (不等于) |
3. 逻辑运算符的优先级
优先级 | 高 低 | ||
逻辑运算符 | !(逻辑“非”) | &&(逻辑“与”) | ||(逻辑“或”) |
总结:同级运算看是“左结合”还是“右结合”,不同级看级的高低
在关系运算符、算术运算符、赋值运算符、逻辑运算四者中,优先级从高到低依次为:!(逻辑“非”)、算术运算符、关系运算符、&&(与)、||(或)、赋值运算符
4.其它运算符
=(赋值运算符)、+=、-=、*=、/=(复合赋值运算符)、++、——(自加自减运算符)、,(逗号运算符:最后一个表达式的值即为逗号表达式的值)、?:(表达式1?表达式2:表达式3 ~1为真2为最终值,1为假3为最终值)
5. 位运算含义与功能
位运算符 逗号表达式的运算顺序 | 含义和功能 | 优先级 |
~ | 按位求反 | 最高(单目) |
<< | 左移 | 1 |
>> | 右移 | 1 |
& | 按位与 | 2 |
^ | 按位异或 | 3 |
| | 按位或 | 最低 |
注意:按位求反运算符为单目运算符,优先级别最高,结合性自右向左;其他为双目运算符,结合性自左向右。位运算对象只能是整型或者字符型数据。
按位求反(~)
一般形式:~a
运算功能:把a的各个二进制位取反
左移(<<)
一般形式:a<<i
运算功能:把a的各二进制位向左移动i位。右端补0,左端溢出的部分舍弃
右移(>>)
一般形式:a>>i
运算功能:把a的各二进制位向右移动i位。右端溢出的部分舍弃,若a为无符号整数或
者是正整数,左端补0,若a为负整数,左端补1。
按位与(&)
一般形式:a&b
运算功能:对于a与b,按照对应的二进制位分别一一对应进行“与”运算,只有对应的二进制位均为1时,该结果才为1,否则为0
按位异或(^)
一般形式:a^b
运算功能:对于a和b,按照对应的二进制位分别一一对应进行“异或”运算,只有对应的二进制位相同时,该位结果才为0,否则为1
按位或(|)
一般形式:a|b
运算功能:对于a和b,按照对应的二进制位分别一一对应进行“或”运算,只有对应的二进制位均为0时,该结果才为0,否则为1
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论