欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C語言運(yùn)算符及其優(yōu)先級(jí)匯總表口訣

 更新時(shí)間:2013年07月22日 18:35:19   作者:  
由于C語言的運(yùn)算符優(yōu)先級(jí)與C++的不完全一樣(主要是增加了幾個(gè)運(yùn)算符),所以這個(gè)口訣不能完全實(shí)用于C++.但是應(yīng)該能夠兼容,大家可以比較一下他們的區(qū)別應(yīng)該就能夠很快掌握C++的優(yōu)先級(jí)的

C語言運(yùn)算符及其優(yōu)先級(jí)匯總表口訣

圓下箭頭一頓號(hào)
非凡增減富強(qiáng)針地長(zhǎng)
三乘除,四加減,五移位
千萬別把魚忘記,它在盛飯的廚子里
小燈大燈燈燈不等
爸喂魚,舅疑惑,裸雞也疑惑
十三姨,十四父,十五逗,兜到低


圓下箭頭一頓號(hào)”指的是第15級(jí)的運(yùn)算符。其中圓指的是運(yùn)算符(),下指的是下標(biāo)運(yùn)算符[],箭頭指的是指向結(jié)構(gòu)體成員運(yùn)算符->,頓號(hào)指的是結(jié)構(gòu)體成員運(yùn)算符、 
非凡增減富強(qiáng)針地長(zhǎng)”指的是第14級(jí)的運(yùn)算符。其中非指的是邏輯運(yùn)算符!,凡指的是按位取反運(yùn)算符~,增減指的是自增和自減運(yùn)算符++和--,富指的是負(fù)號(hào)運(yùn)算符-,強(qiáng)指的是類型轉(zhuǎn)換運(yùn)算符(類型),針指的是指針運(yùn)算符*,地指的是地址運(yùn)算符&,長(zhǎng)指的是長(zhǎng)度運(yùn)算符Sizeof
三乘除,四加減,五移位” 指的是第13級(jí)到第11級(jí)的運(yùn)算符。其中三四五并無實(shí)際意義,只是起區(qū)分級(jí)別而已。也可以想象三指的是第13級(jí)運(yùn)算符。乘除指的是乘法運(yùn)算符*和除法運(yùn)算符/,加減指的是加法運(yùn)算符+和減法運(yùn)算符-,移位指的是左移運(yùn)算符<<和右移運(yùn)算符>>
千萬別把魚忘記,它在盛飯的廚子里”指的是求余運(yùn)算符%,它位于盛飯的廚子里,即指和乘法運(yùn)算符、除法運(yùn)算符在一起。
小燈大燈燈燈不等” 指的是第10級(jí)到第9級(jí)的運(yùn)算符。其中小燈大燈指的是關(guān)系運(yùn)算符<、<=、>和>=,燈燈指的是等于運(yùn)算符==,不等指的是不等于運(yùn)算符!=
爸喂魚,舅疑惑,裸雞也疑惑”指的是第8級(jí)到第4級(jí)的運(yùn)算符。其中,爸喂魚之指的是第8級(jí)的按位與運(yùn)算符&,舅疑惑指的是第7級(jí)的按位異或運(yùn)算符^和第6級(jí)的按位或運(yùn)算符||,裸雞也疑惑指的是第5級(jí)、第4級(jí)的邏輯與運(yùn)算符&&和邏輯或運(yùn)算符||
十三姨,十四父,十五逗,兜到低” 指的是第3級(jí)到第1級(jí)的運(yùn)算符。其中,十三姨指的是條件運(yùn)算符?: (三有雙重含義,即指?:的優(yōu)先級(jí)別是三,它的運(yùn)算符類型也是三目,?難道不是姨即疑惑嗎?),十四父的十四沒有實(shí)際意義,父指的是賦值運(yùn)算符=、+=、-=、*=、/=、%=、>>=、<<=、&=、 ^=和|= ,十五逗指的是第1級(jí)的運(yùn)算符,兜到低指的是15級(jí)運(yùn)算符以,結(jié)束。

附錄:C語言運(yùn)算符及優(yōu)先級(jí)
優(yōu)先級(jí)        運(yùn)算符        含義                  運(yùn)算符類型       結(jié)合方向
15        ()        圓括號(hào)                            單目           自左向右
        []        下標(biāo)運(yùn)算符                
        —>        指向結(jié)構(gòu)體成員運(yùn)算符                
        、        結(jié)構(gòu)體成員運(yùn)算符               
14        !        邏輯非運(yùn)算符                                        自右向左

        ~        按位取反運(yùn)算符                
        ++        自增運(yùn)算符                
        --        自減運(yùn)算符                
        -        負(fù)號(hào)運(yùn)算符                
        (類型)        類型轉(zhuǎn)換運(yùn)算符                
        *        指針運(yùn)算符                
        &        地址運(yùn)算符                
        Sizeof        長(zhǎng)度運(yùn)算符                
13        *        乘法運(yùn)算符                            雙目          自左向右
        /        除法運(yùn)算符                
        %        求余運(yùn)算符                
12        +        加法運(yùn)算符                
        -        減法運(yùn)算符                
11        <<        左移運(yùn)算符                
        >>        右移運(yùn)算符                
10        <、<=、>、>=        關(guān)系運(yùn)算符                
9        ==        等于運(yùn)算符                
        !=        不等于運(yùn)算符                
8        &        按位與運(yùn)算符                
7        ^        按位異或運(yùn)算符                
6        |        按位或運(yùn)算符                
5        &&        邏輯與運(yùn)算符                
4        ||        邏輯或運(yùn)算符                
3        ?:        條件運(yùn)算符                          三目          自右向左

2        =、+=、-=、*=、
           /=、%=、>>=、
           <<=、&=、^=、|=   賦值運(yùn)算符         雙目        
1        ,        逗號(hào)運(yùn)算符                              雙目         自左向右 


括號(hào)成員第一;        //括號(hào)運(yùn)算符[]() 成員運(yùn)算符.  ->
全體單目第二;        //所有的單目運(yùn)算符比如++ -- +(正) -(負(fù)) 指針運(yùn)算*&
乘除余三,加減四;   //這個(gè)"余"是指取余運(yùn)算即%
移位五,關(guān)系六;    //移位運(yùn)算符:<< >> ,關(guān)系:> < >= <= 等
等于(與)不等排第七;    //即== !=
位與異或和位或;    //這幾個(gè)都是位運(yùn)算: 位與(&)異或(^)位或(|)     
"三分天下"八九十;  
邏輯或跟與           //邏輯運(yùn)算符:|| 和 &&
十二和十一;            //注意順序:優(yōu)先級(jí)(||)  底于 優(yōu)先級(jí)(&&) 
條件高于賦值,       //三目運(yùn)算符優(yōu)先級(jí)排到 13 位只比賦值運(yùn)算符和","高//需要注意的是賦值運(yùn)算符很多!
逗號(hào)運(yùn)算級(jí)最低  //逗號(hào)運(yùn)算符優(yōu)先級(jí)最低

由于C語言的運(yùn)算符優(yōu)先級(jí)與C++的不完全一樣(主要是增加了幾個(gè)運(yùn)算符),所以這個(gè)口訣不能完全實(shí)用于C++.但是應(yīng)該能夠兼容,大家可以比較一下他們的區(qū)別應(yīng)該就能夠很快掌握C++的優(yōu)先級(jí)的!  

((*strDest++=*strSrc++)!='\0');  :
重點(diǎn):++后增運(yùn)算符優(yōu)先級(jí)高于*
1.*strDest++相當(dāng)于 *(strDest++)
2.由于是后自增,故執(zhí)行順序?yàn)椋?

               *strDest=*strSrc
               strDest++ strsrc++  //該級(jí)順序不明
              將*strDest與'\0'比較 //即,整個(gè)表達(dá)式的值為*strDest與'\0'的比較結(jié)果

值得注意的是,對(duì)于賦值表達(dá)式,表達(dá)式本身的值等于左邊子表達(dá)式的值。

通過以上深入的分析,我們知道這個(gè)表達(dá)式完成了以下多個(gè)功能:

  1.對(duì)于指針strDest, strSrc,將strSrc所指的內(nèi)存空間的值賦給由strDest所指的內(nèi)存空間。

  2.判斷賦值后的strDest所指的內(nèi)存空間的指是否等于0。

  3.對(duì)于指針strDest,strSrc,他們的值分別加1,即指向下一個(gè)元素。

即:該表達(dá)式實(shí)現(xiàn)了以下三個(gè)功能:

  1.對(duì)于指針strDest, strSrc,將strSrc所指的內(nèi)存空間的值賦給由strDest所指的內(nèi)存空間。

  2.判斷賦值后的strDest所指的內(nèi)存空間的值是否等于0。

  3.對(duì)于指針strDest,strSrc,他們的值分別加1,即指向下一個(gè)元素。

C語言運(yùn)算符表

運(yùn)算符按照優(yōu)先級(jí)大小由上向下排列,在同一行的運(yùn)算符具有相同優(yōu)先級(jí)。第二行是所有的一元運(yùn)算符。
 

運(yùn)算符
解釋
結(jié)合方式
() [] -> . 括號(hào)(函數(shù)等),數(shù)組,兩種結(jié)構(gòu)成員訪問
由左向右
! ~ ++ -- + - 

* & (類型) sizeof

否定,按位否定,增量,減量,正負(fù)號(hào),

間接,取地址,類型轉(zhuǎn)換,求大小

由右向左
* / % 乘,除,取模
由左向右
+ - 加,減
由左向右
<< >> 左移,右移
由左向右
< <= >= > 小于,小于等于,大于等于,大于
由左向右
== != 等于,不等于
由左向右
& 按位與
由左向右
^ 按位異或
由左向右
| 按位或
由左向右
&& 邏輯與
由左向右
|| 邏輯或
由左向右
? : 條件
由右向左
= += -= *= /= 

&= ^= |= <<= >>=

各種賦值
由右向左
, 逗號(hào)(順序)
由左向右

相關(guān)文章

  • Windows下VScode實(shí)現(xiàn)簡(jiǎn)單回聲服務(wù)的方法

    Windows下VScode實(shí)現(xiàn)簡(jiǎn)單回聲服務(wù)的方法

    回聲服務(wù)端可以將客戶端傳來的信息,再原封不動(dòng)地發(fā)送給客戶端,因而得名 epoch 服務(wù)。接下來通過本文給大家介紹Windows下VScode實(shí)現(xiàn)簡(jiǎn)單回聲服務(wù)的方法,感興趣的朋友一起看看吧
    2021-08-08
  • C++實(shí)現(xiàn)十大排序算法及排序算法常見問題

    C++實(shí)現(xiàn)十大排序算法及排序算法常見問題

    法是程序的靈魂,無論學(xué)習(xí)什么語言,做什么工程項(xiàng)目,都要考慮算法的效率實(shí)現(xiàn),下面這篇文章主要給大家介紹了關(guān)于C++實(shí)現(xiàn)十大排序算法及排序算法常見問題的相關(guān)資料,需要的朋友可以參考下
    2021-09-09
  • C++判斷一個(gè)點(diǎn)是否在圓內(nèi)的方法

    C++判斷一個(gè)點(diǎn)是否在圓內(nèi)的方法

    這篇文章主要為大家詳細(xì)介紹了C++判斷一個(gè)點(diǎn)是否在圓內(nèi)的方法,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • c語言中如何修改文件中間的幾個(gè)字節(jié)

    c語言中如何修改文件中間的幾個(gè)字節(jié)

    工作中碰到一個(gè)問題,如何只修改文件中間的幾個(gè)字節(jié),而其他的內(nèi)容不變。這個(gè)問題看似簡(jiǎn)單,但是很多人估計(jì)都不知道怎么做。我開始seek到文件的特定的位置,然后寫文件,但是使用的文件打開模式不對(duì),文件不是被清空,就是被截?cái)?,達(dá)不到效果
    2020-10-10
  • Qt實(shí)現(xiàn)矩形大小任意縮放的示例代碼

    Qt實(shí)現(xiàn)矩形大小任意縮放的示例代碼

    這篇文章主要介紹了Qt如何實(shí)現(xiàn)在窗口上繪制任意大小的矩形,并且通過邊角的拖曳按鈕可改變矩形大小,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2022-06-06
  • C++中sprintf使用的方法與printf的區(qū)別分析

    C++中sprintf使用的方法與printf的區(qū)別分析

    這篇文章主要介紹了C++中sprintf使用的方法與printf的區(qū)別,實(shí)例分析了sprintf與printf的具體用法及相關(guān)注意事項(xiàng),具有一定參考借鑒價(jià)值,需要的朋友可以參考下
    2015-01-01
  • Qt多版本共存使用實(shí)現(xiàn)組件增刪

    Qt多版本共存使用實(shí)現(xiàn)組件增刪

    本文主要介紹了Qt多版本共存使用實(shí)現(xiàn)組件增刪,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-02-02
  • C語言也有封裝,繼承和多態(tài)你知道嗎

    C語言也有封裝,繼承和多態(tài)你知道嗎

    這篇文章主要為大家詳細(xì)介紹了C語言封裝,繼承,多態(tài),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03
  • C++實(shí)現(xiàn)簡(jiǎn)單校園導(dǎo)游系統(tǒng)

    C++實(shí)現(xiàn)簡(jiǎn)單校園導(dǎo)游系統(tǒng)

    這篇文章主要為大家詳細(xì)介紹了C++實(shí)現(xiàn)簡(jiǎn)單校園導(dǎo)游系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • C語言菜鳥基礎(chǔ)教程之單精度浮點(diǎn)數(shù)與雙精度浮點(diǎn)數(shù)

    C語言菜鳥基礎(chǔ)教程之單精度浮點(diǎn)數(shù)與雙精度浮點(diǎn)數(shù)

    在C語言中,單精度浮點(diǎn)數(shù)(float)和雙精度浮點(diǎn)數(shù)(double)類型都是用來儲(chǔ)存實(shí)數(shù)的,雙精度是用記憶較多,有效數(shù)字較多,數(shù)值范圍較大。
    2017-10-10

最新評(píng)論