c語言之運算子優先順序

2021-07-09 11:52:40 字數 3836 閱讀 4021

c語言之運算子優先順序

c語言運算子優先順序

優先順序

運算子

名稱或含義

使用形式

結合方向

說明

1

陣列下標

陣列名[常量表示式]

左到右--

()

圓括號(表示式)/函式名(形參表)

--.

成員選擇(物件)

物件.成員名

--->

成員選擇(指標)

物件指標->成員名

--2

-

負號運算子

-表示式

右到左

單目運算子

~

按位取反運算子

~表示式

++

自增運算子

++變數名/變數名++

--

自減運算子

--變數名/變數名--

*

取值運算子

*指標變數

&

取位址運算子

&變數名

!

邏輯非運算子

!表示式

(

型別)

強制型別轉換

(資料型別)表示式

--sizeof

長度運算子

sizeof(表示式)

--3

/

除表示式/表示式

左到右雙目運算子

*

乘表示式*表示式

%

餘數(取模)

整型表示式%整型表示式

4

+

加表示式+表示式

左到右雙目運算子

-

減表示式-表示式

5

<<

左移變數《表示式

左到右雙目運算子

>>

右移變數》表示式

6

>

大於表示式》表示式

左到右雙目運算子

>=

大於等於

表示式》=表示式

<

小於表示式《表示式

<=

小於等於

表示式<=表示式

7

==

等於表示式==表示式

左到右雙目運算子

=

不等於表示式!= 表示式

8

&

按位與表示式&表示式

左到右雙目運算子

9

^

按位異或

表示式^表示式

左到右雙目運算子

10

|

按位或表示式|表示式

左到右雙目運算子

11

&&

邏輯與表示式&&表示式

左到右雙目運算子

12

||

邏輯或表示式||表示式

左到右雙目運算子

13

?:

條件運算子

表示式1?

表示式2: 表示式3

右到左

三目運算子

14

=

賦值運算子

變數=表示式

右到左

--/=

除后賦值

變數/=表示式

--*=

乘後賦值

變數*=表示式

--%=

取模後賦值

變數%=表示式

--+=

加後賦值

變數+=表示式

---=

減後賦值

變數-=表示式

--<<=

左移後賦值

變數<<=表示式

-->>=

右移後賦值

變數》=表示式

--&=

按位與後賦值

變數&=表示式

--^=

按位異或後賦值

變數^=表示式

--|=

按位或後賦值

變數|=表示式

--15

逗號運算子

表示式,表示式,…

左到右--

先摘錄譚浩強《c程式設計》對運算子優先順序的兩點說明:

1. 同一優先順序的運算子,運算次序由結合方向來決定。

例如:a) * 與 / 具有相同的優先級別,其結合方向為自左向右,因此3 * 5 / 4的運算次序是先乘後除;

b) - 和 ++ 為同一優先順序,結合方向為自右向左,因此 - i ++ 相當於 - ( i ++ )。

2. 從上述表中可以大致歸納出各類運算子優先順序:

初等執行符->單目運算子->算術運算子->關係運算子->邏輯運算子->條件運算子->賦值運算子->逗號運算子

經過分析總結,編成順口溜6句以助記憶:

初等單目一二級, // 初等運算子和單目運算子分別是第1、2優先順序

乘除求餘加減移, // 這句裡面的運算子全歸為算術運算子,移表示移位

關係等於不等於, // 關係運算子(<  <=  >  >=)

按位與來異或或, // 位運算子優先順序順序: & -> ^ -> |

邏輯與或條件弱, // 邏輯運算子優先順序順序: && -> ||,後面跟著優先順序比較低(弱)的條件運算子

賦值逗號一點破。 // 賦值,逗號最低

C語言之運算子優先順序

在乙個表示式中可能包含多個有不同運算子連線起來的 具有不同資料型別的資料物件 由於表示式有多種運算,不同的結合順序可能得出不同結果甚至出現錯誤運算錯誤,因為當表示式中含多種運算時,必須按一定順序進行結合,才能保證運算的合理性和結果的正確性 唯一性。優先順序從上到下依次遞減,最上面具有最高的優先順序,...

運算子優先順序 C 運算子優先順序

c 運算子優先順序 優先順序運算子 描述方向1 scope resolution 範圍解析 left to right 2 suffix postfix increment and decrement 字首 字尾遞增和遞減 function call 函式呼叫 array subscripting ...

C語言運算子優先順序

優先順序運算子 名稱或含義 使用形式 結合方向說明1 陣列下標 陣列名 常量表示式 左到右 圓括號 表示式 函式名 形參表 成員選擇 物件 物件.成員名 成員選擇 指標 物件指標 成員名2 負號運算子 表示式 右到左單目運算子 型別 強制型別轉換 資料型別 表示式 自增運算子 變數名 變數名 單目運...