宝玛科技网
您的当前位置:首页正文

逻辑运算符号&&、||、!的 相对优先级是怎样的?

来源:宝玛科技网

有网友碰到这样的问题“逻辑运算符号&&、||、!的 相对优先级是怎样的?”。小编为您整理了以下解决方案,希望对您有帮助:

解决方案1:

运算符运算等级如下
其中 1级优先级最高,15级最低,
1级优先级 左结合
() 圆括号
[] 下标运算符
-> 指向结构体成员运算符
. 结构体成员运算符

2级优先级 右结合
! 逻辑非运算符
~ 按位取反运算符
++ 自增运算符
-- 自减运算符
- 负号运算符
(类型) 类型转换运算符
* 指针运算符
& 地址与运算符
sizeof 长度运算符

3级优先级 左结合
* 乘法运算符
/ 除法运算符
% 取余运算符

4级优先级 左结合
+ 加法运算符
- 减法运算符

5级优先级 左结合
<< 左移运算符
>> 右移运算符

6级优先级 左结合
<、<=、>、>= 关系运算符

7级优先级 左结合
== 等于运算符
!= 不等于运算符

8级优先级 左结合
& 按位与运算符

9级优先级 左结合
^ 按位异或运算符

10级优先级 左结合
| 按位或运算符

11级优先级 左结合
&& 逻辑与运算符

12级优先级 左结合
|| 逻辑或运算符

13级优先级 右结合
? : 条件运算符

14级优先级 右结合
= += -= *= /= %= &= ^= |= <<= >>= 全为赋值运算符

15级优先级 左结合
, 逗号运算符

解决方案2:

按照运算符的运算等级来看,&&的优先级高于||
应该是理解成(a&&b)||c

解决方案3:

运算符运算等级如下

其中 1级优先级最高,15级最低,

1级优先级 左结合

() 圆括号 

[] 下标运算符 

-> 指向结构体成员运算符 

. 结构体成员运算符 

2级优先级 右结合 

! 逻辑非运算符 

~ 按位取反运算符 

++ 自增运算符 

-- 自减运算符 

- 负号运算符 

(类型) 类型转换运算符 

* 指针运算符 

& 地址与运算符 

sizeof 长度运算符 

3级优先级 左结合 

* 乘法运算符 

/ 除法运算符 

% 取余运算符 

4级优先级 左结合

+ 加法运算符 

- 减法运算符 

5级优先级 左结合 

<< 左移运算符 

>> 右移运算符 

6级优先级 左结合 

<、<=、>、>= 关系运算符 

7级优先级 左结合 

== 等于运算符 

!= 不等于运算符 

8级优先级 左结合 

& 按位与运算符 

9级优先级 左结合 

^ 按位异或运算符 

10级优先级 左结合 

| 按位或运算符 

11级优先级 左结合 

&& 逻辑与运算符 

12级优先级 左结合 

|| 逻辑或运算符 

13级优先级 右结合 

? : 条件运算符 

14级优先级 右结合 

= += -= *= /= %= &= ^= |= <<= >>= 全为赋值运算符

15级优先级 左结合 

, 逗号运算符

显示全文