怎樣建立和理解非常復雜的聲明?
這個問題至少有以下3 種答案:
1. char *(*(*a[N])())();
2. 用typedef 逐步完成聲明:
typedef char *pc; /* 字符指針*/
typedef pc fpc(); /* 返回字符指針的函數*/
typedef fpc *pfpc; /* 上面函數的指針*/
typedef pfpc fpfpc(); /* 返回函數指針的函數*/
typedef fpfpc *pfpfpc; /* 上面函數的指針*/
pfpfpc a[N]; /* 上面指針的'數組*/
3. 使用cdecl 程序, 它可以把英文翻譯成C 或者把C 翻譯成英文:
cdecl> declare a as array of pointer to function returning pointer to function returning pointer to char
char *(*(*a[])())()
通過類型轉換, cdecl 也可以用于解釋復雜的聲明, 指出參數應該進入哪一對括號(如同在上述的復雜函數定義中)
【怎樣建立和理解非常復雜的聲明?】相關文章:
怎樣建立采購成本管理和控制體系08-26
怎樣建立教師成長檔案12-16
怎樣建立企業文化11-02
怎樣建立團隊精神?11-03
C語言怎樣定義和聲明全局變量和函數最好11-24
配送中心的分類和建立11-10
怎樣在合唱中建立美妙的聲音狀態10-04
如何和老板建立有效的關系07-17
企業如何建立團隊的溝通和信任08-29