c++運算子的優先順序共分為16級,理解記憶如下:
首先記憶四個大的層次:域天鬥地單先賦值後
·域限定(::)優先順序最高,逗號運算子優先順序最低(兩個特殊級別)
·單目運算子優先順序第二高,賦值運算子第二低(理解:單目運算必須完成後才可能參與雙目運算,所以優先順序當然較高;賦值操作需要等表示式其他部分得到結果後再進行,優先順序自然較低)
·(其餘運算子優先順序排中間)
接下來把大的層次展開一下:
單目運算子
字尾運算子優先,字首次之(兩個層次)
字尾運算子中包括:成員括號後增減
成員運算子:.及->。理解:看到myclass.abc、p->***.yyy可以理解為乙個變數標識整體
括號:包括()及。這裡()是指函式呼叫的括號,是下標運算子。
後增減:字尾形式的++、--。
字首運算子中包括:正負非指先增減,創刪大小與轉換
其他運算子下表取自
level
precedence group
operator
description
grouping
1scope
::
scope qualifier
left-to-right
2postfix (unary)
++ --
postfix increment / decrement
left-to-right
()
functional forms
subscript
. ->
member access
3prefix (unary)
++ --
prefix increment / decrement
right-to-left
~ !
bitwise not / logical not
+ -
unary prefix
& *
reference / dereference
new delete
allocation / deallocation
sizeof
parameter pack
(type)
c-style type-casting
4pointer-to-member
.* ->*
access pointer
left-to-right
5arithmetic: scaling
* / %
multiply, divide, modulo
left-to-right
6arithmetic: addition
+ -
addition, subtraction
left-to-right
7bitwise shift
<< >>
shift left, shift right
left-to-right
8relational
< > <= >=
comparison operators
left-to-right
9equality
== !=
equality / inequality
left-to-right
10and
&
bitwise and
left-to-right
11exclusive or
^
bitwise xor
left-to-right
12inclusive or
|
bitwise or
left-to-right
13conjunction
&&
logical and
left-to-right
14disjunction
||
logical or
left-to-right
15assignment-level expressions
= *= /= %= += -=
>>= <<= &= ^= |=assignment / compound assignment
right-to-left
?:
conditional operator
16sequencing
,
comma separator
left-to-right
運算子優先順序 C 運算子優先順序
c 運算子優先順序 優先順序運算子 描述方向1 scope resolution 範圍解析 left to right 2 suffix postfix increment and decrement 字首 字尾遞增和遞減 function call 函式呼叫 array subscripting ...
運算子優先順序 Python 運算子優先順序
python 運算子優先順序 運算子描述 lambda lambda表示式 or布林 或 and布林 與 not x 布林 非 in,not in 成員測試 is,is not 同一性測試 比較 按位或 按位異或 按位與 移位 加法與減法 乘法 除法與取餘 x,x 正負號 x 按位翻轉 指數 x.a...
運算子優先順序 PHP運算子優先順序
php運算子優先順序 結合方向 運算子附加資訊 非結合clone new clone 和 new左 array 非結合 遞增 遞減運算子 非結合 int float string array object bool 型別非結合 instanceof 型別右結合 邏輯操作符 左 算術運算子 左 算術運...