基本的優先順序順序需要了解,太過細緻的忘了後來這看看就好。
優先順序最高的是括號、陣列下標、後置++、--;優先順序最低的是逗號運算子。
位於中間的是單目運算子——雙目運算子——三目運算子——賦值運算子。
所有單目運算子優先等級一致
雙目運算子中遵循算數運算子(其中*/大於+-)>移位運算子》關係運算子》位運算子》邏輯運算子
三目運算子則只有條件運算這一種
相同優先等級按結合順序計算,除了單目、三目、賦值運算子採取從右到左的結合律,其餘均採用從左到右的計算順序。具體見**
優先順序
運算子
名稱或含義
使用形式
結合方向
說明
1
後置++
後置自增運算子
變數名++
左到右
後置--
後置自減運算子
變數名--
[ ]
陣列下標
陣列名[整型表示式]
( )
圓括號
(表示式)/函式名(形參表)
.
成員選擇(物件)
物件.成員名
->
成員選擇(指標)
物件指標->成員名
2
-
負號運算子
-表示式
右到左
單目運算子
(型別)
強制型別轉換
(資料型別)表示式
前置++
前置自增運算子
++變數名
單目運算子
前置--
前置自減運算子
--變數名
單目運算子
*
取值運算子
*指標表示式
單目運算子
&
取位址運算子
&左值表示式
單目運算子
!
邏輯非運算子
!表示式
單目運算子
~
按位取反運算子
~表示式
單目運算子
sizeof
長度運算子
sizeof 表示式/sizeof(型別)
3
*
乘
表示式*表示式
左到右
雙目運算子
/
除
表示式/表示式
雙目運算子
%
餘數(取模)
整型表示式%整型表示式
雙目運算子
4
+
加
表示式+表示式
左到右
雙目運算子
-
減
表示式-表示式
雙目運算子
5
<<
左移
表示式《表示式
左到右
雙目運算子
>>
右移
表示式》表示式
雙目運算子
6
>
大於
表示式》表示式
左到右
雙目運算子
>=
大於等於
表示式》=表示式
雙目運算子
<
小於
表示式《表示式
雙目運算子
<=
小於等於
表示式<=表示式
雙目運算子
7
==
等於
表示式==表示式
左到右
雙目運算子
!=
不等於
表示式!= 表示式
雙目運算子
8
&
按位與
整型表示式&整型表示式
左到右
雙目運算子
9
^
按位異或
整型表示式^整型表示式
左到右
雙目運算子
10
|
按位或
整型表示式|整型表示式
左到右
雙目運算子
11
&&
邏輯與
表示式&&表示式
左到右
雙目運算子
12
||
邏輯或
表示式||表示式
左到右
雙目運算子
13
?:
條件運算子
表示式1? 表示式2: 表示式3
右到左
三目運算子
14
=
賦值運算子
變數=表示式
右到左
/=
除后賦值
變數/=表示式
*=
乘後賦值
變數*=表示式
%=
取模後賦值
變數%=表示式
+=
加後賦值
變數+=表示式
-=
減後賦值
變數-=表示式
<<=
左移後賦值
變數<<=表示式
>>=
右移後賦值
變數》=表示式
&=
按位與後賦值
變數&=表示式
^=
按位異或後賦值
變數^=表示式
|=
按位或後賦值
變數|=表示式
15
,
逗號運算子
表示式,表示式,…
左到右
從左向右順序運算
運算子優先順序 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 型別右結合 邏輯操作符 左 算術運算子 左 算術運...