1. 程式人生 > >C++ 運算子優先順序

C++ 運算子優先順序

優先順序

運算子

名稱或含義

使用形式

結合方向

說明

1

[]

陣列下標

陣列名[常量表達式]

左到右

()

圓括號

(表示式)/函式名(形參表)

.

成員選擇(物件)

物件.成員名

->

成員選擇(指標)

物件指標->成員名

2

-

負號運算子

-表示式

右到左

單目運算子

(型別)

強制型別轉換

(資料型別)表示式

++

自增運算子

++變數名/變數名++

單目運算子

--

自減運算子

--變數名/變數名--

單目運算子

*

取值運算子

*指標變數

單目運算子

&

取地址運算子

&變數名

單目運算子

!

邏輯非運算子

!表示式

單目運算子

~

按位取反運算子

~表示式

單目運算子

sizeof

長度運算子

sizeof(表示式)

3

/

表示式/表示式

左到右

雙目運算子

*

表示式*表示式

雙目運算子

%

餘數(取模)

整型表示式/整型表示式

雙目運算子

4

+

表示式+表示式

左到右

雙目運算子

-

表示式-表示式

雙目運算子

5

<<

左移

變數<<表示式

左到右

雙目運算子

>>

右移

變數>>表示式

雙目運算子

6

>

大於

表示式>表示式

左到右

雙目運算子

>=

大於等於

表示式>=表示式

雙目運算子

<

小於

表示式<表示式

雙目運算子

<=

小於等於

表示式<=表示式

雙目運算子

7

==

等於

表示式==表示式

左到右

雙目運算子

!=

不等於

表示式!= 表示式

雙目運算子

8

&

按位與

表示式&表示式

左到右

雙目運算子

9

^

按位異或

表示式^表示式

左到右

雙目運算子

10

|

按位或

表示式|表示式

左到右

雙目運算子

11

&&

邏輯與

表示式&&表示式

左到右

雙目運算子

12

||

邏輯或

表示式||表示式

左到右

雙目運算子

13

?:

條件運算子

表示式1? 表示式2: 表示式3

右到左

三目運算子

14

=

賦值運算子

變數=表示式

右到左

/=

除後賦值

變數/=表示式

*=

乘後賦值

變數*=表示式

%=

取模後賦值

變數%=表示式

+=

加後賦值

變數+=表示式

-=

減後賦值

變數-=表示式

<<=

左移後賦值

變數<<=表示式

>>=

右移後賦值

變數>>=表示式

&=

按位與後賦值

變數&=表示式

^=

按位異或後賦值

變數^=表示式

|=

按位或後賦值

變數|=表示式

15

,

逗號運算子

表示式,表示式,…

左到右

從左向右順序運算

說明:

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

口訣:

括號成員第一;        //括號運算子[]() 成員運算子.  ->

全體單目第二;        //所有的單目運算子比如++、 --、 +(正)、 -(負) 、指標運算*、&乘除餘三,加減四;   //這個"餘"是指取餘運算即%

移位五,關係六;    //移位運算子:<< >> ,關係:> < >= <= 等

等於(與)不等排第七;    //即== 和!=

位與異或和位或;    //這幾個都是位運算: 位與(&)異或(^)位或(|)    

"三分天下"八九十;  

邏輯或跟與;            //邏輯運算子:|| 和 &&

十二和十一;            //注意順序:優先順序(||)  底於 優先順序(&&) 

條件高於賦值,        //三目運算子優先順序排到13 位只比賦值運算子和","高

逗號運算級最低!    //逗號運算子優先順序最低 

相關推薦

C運算子優先順序

優先順序 運算子 名稱或含義 使用形式 結合方向 說明 1 [] 陣列下標 陣列名[常量表達式] 左到右

C 運算子優先順序與記憶口訣

運算子詳情表 優先順序 運算子 名稱或含義 使用形式 結合方向 說明 1 [] 陣列下標 陣列名[常量表達式] 左到右 () 圓括號 (表示式)

CC++、Java、C#運算子優先順序

轉自:https://baike.baidu.com/item/%E8%BF%90%E7%AE%97%E7%AC%A6%E4%BC%98%E5%85%88%E7%BA%A7/4752611?fr=aladdin C語言優先順序 優先順序 運算子

C++ 運算子優先順序

優先順序運算子名稱或含義使用形式結合方向說明1[]陣列下標陣列名[常量表達式]左到右()圓括號(表示式)/函式名(形參表).成員選擇(物件)物件.成員名->成員選擇(指標)物件指標->成員名

C-運算子優先順序一個小例子

程式碼 比如有下面一段程式碼: #include <stdio.h> int main() { int a = 0x02; int b = 0x20; int ret = 0; const int MASK =

C++運算子優先順序

運算子優先順序(級數小的先算) 運算子 描述 例子 可過載性 第一級別       :: 作用域解析符 Class::age = 2;

C語言運算子優先順序口訣

基本的優先順序需要記住: 指標最優,單目運算優於雙目運算。如正負號。 先乘除(模),後加減。 先算術運算,後移位運算,最後位運算。 請特別注意:1 << 3 + 2 & 7等價於 (1 << (3 + 2))&7. 邏輯運算最

C語言中++自增運算子後置時的使用說明(附C語言運算子優先順序表)

首先吐槽一聲:後置++運算子就是個坑!! 有學弟問我一道C語言題目,如下: int x = 11,則表示式(x++*1/3)的值是多少? 對答案這個先賣個關子,學弟老實明白的告訴我:答案不重要,就是感覺很糾結。 我很認真的思考,仔細的分析,然後用VS測試了一下,於是我

C語言複習筆記(2)——運算子優先順序

C 運算子優先順序 下表列出 C 運算子的優先順序和結合性。運算子從頂到底以降序列出。 優先順序 運算子 描述 結合性

C語言中運算子優先順序記憶方法

  C語言中有很多運算子,它們之間有優先順序關係,但是原來苦於優先順序關係太多,根本記不住,所以程式設計時只能不斷的用括號來組合程式碼~   今天找到了一個口訣,在這裡記下來,方便以後查閱 圓方

C語言運算子優先順序列表(超詳細)

本篇文章是對C語言中運算子的優先順序進行了詳細的分析介紹,需要的朋友參考下 每當想找哪個運算子優先順序高時,很多時候總是想找的就沒有,真讓人氣憤!現在,終於有個我個人覺得非常全的,分享給大家,歡迎拍磚! C語言運算子優先順序 優先順序 運算子 名稱或含

C/C++筆記】 C語言運算子優先順序

文章作者:姜南(Slyar) 文章來源:Slyar Home (www.slyar.com) 轉載請註明,謝謝合作。單目運算子優先順序運算子名稱或含義使用形式結合方向說明1[]陣列下標陣列名[常量表達式]左到右()圓括號(表示式)/函式名(形參表).成員選擇(物件)物件.成員

c++中的簡單逗號表示式和指標與取地址運算子優先順序的示例

int *p1, *p2; int a = 10; int b = 20; p1 = &a; /////////////////////////////////////////////

C/C++】運算子優先順序記憶

運算子優先順序順口溜:淡雲一筆,鞍落三服。 淡:單目運算子; 雲:算術運算子; 一:移位運算子; 筆:比較運算子; 鞍:按位運算子; 落:邏輯運算子; 三:三目運算子; 服:賦值運算子。 單目運算子 >算術運算子 >移位 >比較 >按

C運算子優先順序

優先順序 運算子 名稱或含義 使用形式 結合方向 說明 1 [] 陣列下標 陣列名[常量表達式] 左到右 () 圓括號 (表示式)/函式名(形參表) . 成員選擇(物件) 物件.成員名 ->

Linux C/C++ 運算子:種類、優先順序、結合性

一、C語言運算子優先順序 詳細列表 優先順序 運算子 名稱或含義 使用形式 結合方向 說明 1 [] 陣列下標 陣列名[常量表達式] 左到右 () 圓括號 (表示式)/函式名(形參表)

C語言運算子優先順序

每當想找哪個運算子優先順序高時,很多時候總是想找的就沒有,真讓人氣憤!現在,終於有個我個人覺得非常全的,分享給大家,歡迎拍磚!C語言運算子優先順序優先順序運算子名稱或含義使用形式結合方向說明1[]陣列下標陣列名[常量表達式]左到右--()圓括號(表示式)/函式名(形參表)--

一起來學習如何快速、準確、輕鬆地記住C語言的運算子優先順序順序!!

本文僅適用於怎麼也記不住運算子優先順序順序的人,已經記住了的就飄過吧 ~~ 估計很多初學 C 語言的人都會碰到這麼一個問題: C 運算子太多太複雜,優先順序順序難記,背了還是忘。那怎麼辦呢? 在實際寫程式的過程中倒還好,實在不知道哪個先哪個後

C語言運算子優先順序

文章作者:姜南(Slyar) 文章來源:Slyar Home (www.slyar.com) 轉載請註明,謝謝合作。 單目運算子 優先順序 運算子 名稱或含義 使用形式 結合方

C++運算子過載詳細解說及程式碼編寫

一、不能過載的運算子:   (1) "."(類成員訪問運算子)   (2)" .*"(類成員指標訪問運算子)   (3) "::"(域運算子)   (4)"sizeof"(長度運算子)   (5) " ?:"(條件運算子)