C語言中宣告的優先順序規則

2021-09-01 03:17:32 字數 631 閱讀 3998

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關鍵字的後面緊跟型別...