• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            羅朝輝(飄飄白云)

            關(guān)注嵌入式操作系統(tǒng),移動(dòng)平臺(tái),圖形開(kāi)發(fā)。-->加微博 ^_^

              C++博客 :: 首頁(yè) :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理 ::
              85 隨筆 :: 0 文章 :: 169 評(píng)論 :: 0 Trackbacks

            《Expert C Programming》(《C專(zhuān)家編程》)中提到C語(yǔ)言聲明的優(yōu)先級(jí)規(guī)則如下:

            A 聲明從它的名字開(kāi)始讀取,然后按照優(yōu)先級(jí)順序依次讀取;

            B 優(yōu)先級(jí)從高到低依次是:     

               B.1 聲明中被括號(hào)括起來(lái)的那部分;    

               B.2 后綴操作符:括號(hào)()表示這是一個(gè)函數(shù),而方括號(hào)[]表示這是一個(gè)數(shù)組;     

               B.3 前綴操作符:星號(hào)*標(biāo)識(shí)“指向...的指針”;

            C 如果const和(或者)volatile關(guān)鍵字的后面緊跟類(lèi)型說(shuō)明符(如int,long等),那么它作用于類(lèi)型說(shuō)明符,在其他情況下,const和(或)volatile關(guān)鍵字作用于它左邊緊鄰的指針星號(hào)。

            并舉例說(shuō)明:char * const * (*next)();

            A      next                  ---next為聲明的名字

            B.1  (*next)              ---next為一個(gè)指向...的指針

            B.2  (*next)()            ---next是一個(gè)函數(shù)指針

            B.3  *(*next)()          ---next是一個(gè)函數(shù)指針,這個(gè)函數(shù)返回一個(gè)指向...的指針

            C    char * const     ---指向字符類(lèi)型的常量指針  

            故 char * const *(*next)();的含義就是:   next是一個(gè)函數(shù)指針,這個(gè)函數(shù)返回一個(gè)指向字符類(lèi)型的常量指針

            下面我們來(lái)自己分析一個(gè)聲明:

            int(*foo())[];

            自己先推導(dǎo)一下,然后看看結(jié)果結(jié)果:foo為一個(gè)函數(shù),這個(gè)函數(shù)返回一個(gè)指向整型數(shù)組的指針。對(duì)不對(duì)呢?下面我們來(lái)看具體的推導(dǎo)過(guò)程:

            A    foo                      ---foo為聲明的名字

            B.2  foo()                  ---foo為一個(gè)函數(shù)

            B.3  (*foo())              ---foo為一個(gè)函數(shù),這個(gè)函數(shù)返回一個(gè)指向...的指針

            B.2  (*foo())[]            ---foo為一個(gè)函數(shù),這個(gè)函數(shù)返回一個(gè)指向數(shù)組的指針

            C    int (*foo())[]        ---foo為一個(gè)函數(shù),這個(gè)函數(shù)返回一個(gè)指向整型數(shù)組的指針

             

            posted on 2008-06-30 23:33 羅朝輝 閱讀(549) 評(píng)論(1)  編輯 收藏 引用 所屬分類(lèi): C/C++

            評(píng)論

            # re: C語(yǔ)言聲明的優(yōu)先級(jí)規(guī)則 2009-06-01 03:34 yoco
            Nice Article! Thanks for your sharing!  回復(fù)  更多評(píng)論
              

            久久精品成人| 久久久噜噜噜久久| 99久久99这里只有免费费精品| 久久97久久97精品免视看| 伊人色综合久久天天人守人婷| 97超级碰碰碰久久久久| 青青青国产精品国产精品久久久久| 久久久久亚洲AV无码观看| 天天综合久久久网| 久久亚洲2019中文字幕| 久久精品国产清高在天天线| 亚洲精品乱码久久久久久不卡| 久久久国产打桩机| 久久精品国产亚洲网站| 久久久亚洲欧洲日产国码aⅴ | 久久精品成人免费看| 久久高清一级毛片| 久久亚洲精品成人AV| 久久亚洲AV成人出白浆无码国产 | 中文字幕热久久久久久久| 久久一区二区三区免费| 久久99国产综合精品女同| 欧美性大战久久久久久| 午夜精品久久久久成人| 久久成人精品视频| 久久久久久久久久久久中文字幕| 人妻系列无码专区久久五月天| 91精品国产高清久久久久久91| 岛国搬运www久久| 久久精品女人天堂AV麻| 国产V亚洲V天堂无码久久久| 国产69精品久久久久9999APGF| 久久精品国产亚洲av瑜伽| 久久免费高清视频| 久久国产精品99精品国产987| 亚洲精品乱码久久久久久按摩 | 久久伊人亚洲AV无码网站| 国产福利电影一区二区三区,免费久久久久久久精| 伊人久久大香线蕉综合网站| 久久久久免费视频| 久久中文字幕无码专区|