a 宣告從它的名字開始讀取,然後按照優先順序規則順序讀取
b 優先順序從高到低依次是:
b. 1 宣告中被括號括起來的部分b. 2 字尾操作符:
括號()表示這是乙個函式,而
方括號表示這是乙個陣列
b. 3 字首操作符:星號*表示 「指向...的指標」
c 如果const和(或)volatile關鍵字的後面緊跟型別說明符(如int, long等),那麼它作用於型別說明符。其它情況下,const和(或)volatile關鍵字作用於它緊鄰的指標星號。
用上面的規則分析這個c語言宣告:
char * const *(*next)()
a 首先從左到右找到第乙個非關鍵字:next
b1 (*next)表示:next是乙個指向...型別的指標
b2 (*next)()表示:next是乙個的函式指標,函式的返回型別為...
b3 處理字首的"*",得出函式的返回型別為指標。
c 最後,把char * const解釋為指向字元的常量指標
綜合起來就是:
」next是乙個指標,它指向乙個函式,該函式返回乙個指標,這個指標指向另乙個指向char的常量指標。「
C語言宣告優先順序規則
a 宣告從它的名字開始讀取,然後按照優先順序順序依次讀取。b 優先順序從高到低依次是 b.1 宣告中被括號括起來的部分 b.2 字尾操作符 括號 表示這是乙個 函式,而方括號表示這是乙個陣列 b.3 字首操作符 號表示 指向.的指標 c 如果const和 或 volatile關鍵字的後面緊跟型別說明...
C宣告的優先順序規則
c宣告的優先順序規則 a 宣告從它的名字開始讀取,然後按照優先順序順序依次讀取 b 優先順序從高到低依次是 b.1 宣告中被括號括起來的那部分 b.2 字尾操作符 括號 表示這是乙個函式,而方括號 表示這是乙個陣列 b.3 字首操作符 星號 表示 指向 的指標 c 如果const和 或 volati...
C語言宣告的優先順序規則
a 宣告從它的名字開始讀取,然後按照優先順序順序依次讀取 b 優先順序從高到低依次是 b.1 宣告中被括號括起來的那部分 b.2 字尾操作符 括號 表示這是乙個函式,而方括號表示這是乙個陣列 b.3 字首操作符 星號 表示 指向.的指標 c 如果const和 或 volatile關鍵字的後面緊跟型別...