怎样建立和理解非常复杂的声明?
这个问题至少有以下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