这里写目录标题
C++运算符优先级定义了表达式中运算符的计算顺序。当一个表达式中有多个运算符时,运算符的优先级决定了哪些运算符先被计算。下面是C++中一些常见运算符的优先级列表,从高到低排序:
阿里云参考链接:developer.aliyun.com/article/1113113
- 括号
()
:用于改变运算的正常顺序。 - 成员访问
.
、->
:用于访问类、结构体和联合体的成员。 - 自增和自减
++
、--
(作为后缀使用时)。 - 单目运算符:如逻辑非
!
、按位取反~
、一元加号+
、一元减号-
、自增++
、自减--
(作为前缀使用时)、解引用*
、取地址&
、sizeof
、typeid
、const_cast
、static_cast
、dynamic_cast
、reinterpret_cast
。 - 乘法
*
、除法/
、取模%
。 - 加法
+
、减法-
。 - 位移运算符
<<
、>>
。 - 关系运算符:小于
<
、小于等于<=
、大于>
、大于等于>=
。 - 相等运算符
==
、不等于!=
。 - 按位与
&
。 - 按位异或
^
。 - 按位或
|
。 - 逻辑与
&&
。 - 逻辑或
||
。 - 条件运算符
?:
:三元运算符,用于条件表达式。 - 赋值运算符
=
、+=
、-=
、*=
、/=
、%=
、<<=
、>>=
、&=
、^=
、|=
。 - 逗号运算符
,
:用于分隔多个表达式,按顺序从左到右执行,并返回最后一个表达式的结果。
请注意,这个列表并不是完整的,C++中还有其他运算符和特殊情况。为了避免混淆,建议在编写复杂表达式时使用括号来明确运算符的计算顺序,这不仅可以避免潜在的错误,也使代码更易于阅读和理解。