怎样建立和理解非常复杂的声明?例如定义一个包含N 个指向返回 指向字符的指针的函数的指针的数组?


Posted in 面试题 onMarch 19, 2013
这个问题至少有以下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 也可以用于解释复杂的声明, 指出参数应该进入哪一对括号(如同在上述的复杂函数定义中)

Tags in this post...

面试题 相关文章推荐
康拓普公司Java笔面试
Sep 23 面试题
C++的几个面试题附答案
Aug 03 面试题
视图的作用
Dec 19 面试题
介绍一下SQL中union,intersect和minus
Apr 05 面试题
关于.NET, HTML的五个问题
Aug 29 面试题
盛大二次面试题
Nov 18 面试题
LINUX下线程,GDI类的解释
Apr 17 面试题
50道外企软件测试面试题
Aug 18 面试题
远程调用的原理
Jul 05 面试题
写一个函数,要求输入一个字符串和一个字符长度,对该字符串进行分隔
Jul 30 面试题
设置器与访问器的定义以及各自特点
Jan 08 面试题
什么是继承
Dec 07 面试题
这段代码难道不该打印出56吗
Feb 27 #面试题
枚举和一组预处理的#define有什么不同
Sep 21 #面试题
extern在函数声明中是什么意思
Jan 19 #面试题
strstr()的简单实现
Sep 26 #面试题
程序运行正确, 但退出时却"core dump"了,怎么回事
Feb 19 #面试题
怎样从/向数据文件读/写结构
Nov 23 #面试题
如何向接受结构参数的函数传入常数值
Feb 17 #面试题
You might like
用PHP伪造referer突破网盘禁止外连的代码
2008/06/15 PHP
php设计模式  Command(命令模式)
2011/06/17 PHP
php常用的url处理函数总结
2014/11/19 PHP
PHP输出两个数字中间有多少个回文数的方法
2015/03/23 PHP
PHP实现webshell扫描文件木马的方法
2017/07/31 PHP
PHP基于timestamp和nonce实现的防止重放攻击方案分析
2019/07/26 PHP
Javascript 中介者模式实例
2009/12/16 Javascript
JavaScript栏目列表隐藏/显示简单实现
2013/04/03 Javascript
Jquery中国地图热点效果-鼠标经过弹出提示层信息的简单实例
2014/02/12 Javascript
Javascript this 关键字 详解
2014/10/22 Javascript
easyUI实现(alert)提示框自动关闭的实例代码
2016/11/07 Javascript
ajax级联菜单实现方法实例分析
2016/11/28 Javascript
JS定时器用法分析【时钟与菜单中的应用】
2016/12/21 Javascript
js实现下一页页码效果
2017/03/07 Javascript
JS基于贪心算法解决背包问题示例
2017/11/27 Javascript
vue2.0+ 从插件开发到npm发布的示例代码
2018/04/28 Javascript
浅谈Webpack多页应用HMR卡住问题
2019/04/24 Javascript
JS数组方法join()用法实例分析
2020/01/18 Javascript
node.js中stream流中可读流和可写流的实现与使用方法实例分析
2020/02/13 Javascript
js实现购物车商品数量加减
2020/09/21 Javascript
Ant-design-vue Table组件customRow属性的使用说明
2020/10/28 Javascript
vue+elementUI中表格高亮或字体颜色改变操作
2020/11/02 Javascript
vue动态合并单元格并添加小计合计功能示例
2020/11/26 Vue.js
如何在vue中使用kindeditor富文本编辑器
2020/12/19 Vue.js
深入解析Python中的urllib2模块
2015/11/13 Python
利用python画一颗心的方法示例
2017/01/31 Python
python决策树之CART分类回归树详解
2017/12/20 Python
Python实现PS滤镜中马赛克效果示例
2018/01/20 Python
python读取和保存图片5种方法对比
2018/09/12 Python
Python控制台实现交互式环境执行
2020/06/09 Python
Python基于network模块制作电影人物关系图
2020/06/19 Python
python中的unittest框架实例详解
2021/02/05 Python
HTML5获取当前地理位置并在百度地图上展示的实例
2020/07/10 HTML / CSS
兰蔻加拿大官方网站:Lancome加拿大
2016/08/05 全球购物
护理专业毕业生推荐信
2013/10/31 职场文书
毕业生自我鉴定范文
2013/11/08 职场文书