怎样建立和理解非常复杂的声明?例如定义一个包含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...

面试题 相关文章推荐
String和StringBuffer的区别
Aug 13 面试题
如何设置Java的运行环境
Apr 05 面试题
存储过程和sql语句的优缺点
Jul 02 面试题
Ref与out有什么不同
Nov 24 面试题
新大陆软件面试题
Nov 24 面试题
STP协议的主要用途是什么?为什么要用STP
Dec 20 面试题
可以使用抽象函数重写基类中的虚函数吗
Jun 02 面试题
网上常见的一份Linux面试题(多项选择部分)
Feb 07 面试题
一些Solaris面试题
Mar 22 面试题
LINUX下线程,GDI类的解释
Apr 17 面试题
Shell如何接收变量输入
Aug 06 面试题
常见的软件开发流程有哪些
Nov 14 面试题
这段代码难道不该打印出56吗
Feb 27 #面试题
枚举和一组预处理的#define有什么不同
Sep 21 #面试题
extern在函数声明中是什么意思
Jan 19 #面试题
strstr()的简单实现
Sep 26 #面试题
程序运行正确, 但退出时却"core dump"了,怎么回事
Feb 19 #面试题
怎样从/向数据文件读/写结构
Nov 23 #面试题
如何向接受结构参数的函数传入常数值
Feb 17 #面试题
You might like
PHP5 安装方法
2006/10/09 PHP
PHP插入排序实现代码
2013/04/04 PHP
ThinkPHP实现支付宝接口功能实例
2014/12/02 PHP
php源码分析之DZX1.5随机数函数random用法
2015/06/17 PHP
php socket通信(tcp/udp)实例分析
2016/02/14 PHP
PHP单例模式应用示例【多次连接数据库只实例化一次】
2018/12/18 PHP
php+js实现的无刷新下载文件功能示例
2019/08/23 PHP
tp5 sum某个字段相加得到总数的例子
2019/10/18 PHP
详解AngularJS的通信机制
2015/06/18 Javascript
全面介绍javascript实用技巧及单竖杠
2016/07/18 Javascript
AngularJS使用自定义指令替代ng-repeat的方法
2016/09/17 Javascript
Angularjs中controller的三种写法分享
2016/09/21 Javascript
聊一聊JS中的prototype
2016/09/29 Javascript
js封装tab标签页实例分享
2016/12/19 Javascript
BootStrap Table后台分页时前台删除最后一页所有数据refresh刷新后无数据问题
2016/12/28 Javascript
基于HTML5+JS实现本地图片裁剪并上传功能
2017/03/24 Javascript
浅谈express 中间件机制及实现原理
2017/08/31 Javascript
使用Vue.js中的过滤器实现幂方求值的方法
2019/08/27 Javascript
解决Layui中templet中a的onclick参数传递的问题
2019/09/20 Javascript
JSONP 的原理、理解 与 实例分析
2020/05/16 Javascript
基于JS实现计算24点算法代码实例解析
2020/07/23 Javascript
微信小程序反编译的实现
2020/12/10 Javascript
jQuery实现手风琴特效
2021/01/11 jQuery
Python中 map()函数的用法详解
2018/07/10 Python
德国珠宝和配件商店:Styleserver
2021/02/23 全球购物
在使用非全零作为空指针内部表达的机器上, NULL是如何定义
2014/11/09 面试题
国贸类专业毕业生的求职信分享
2013/12/08 职场文书
产品促销活动策划书
2014/01/15 职场文书
优秀求职信范文分享
2014/01/26 职场文书
卫生巾广告词
2014/03/18 职场文书
初三班主任寄语大全
2014/04/04 职场文书
员工团队活动方案
2014/08/28 职场文书
领导班子整改方案
2014/10/25 职场文书
2015年营销工作总结范文
2015/04/23 职场文书
人民检察院起诉书
2015/05/20 职场文书
海康机器人重磅发布全新算法开发平台VM4.2
2022/04/21 数码科技