OpenEdv-开源电子网

 找回密码
 立即注册
正点原子全套STM32/Linux/FPGA开发资料,上千讲STM32视频教程免费下载...
查看: 5024|回复: 4

请教一个关于声明的问题。

[复制链接]

24

主题

91

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
377
金钱
377
注册时间
2013-6-19
在线时间
53 小时
发表于 2013-8-24 02:24:55 | 显示全部楼层 |阅读模式



以我个人的想法不就是 char *(*a[N])();

可是书上的答案却是   char *(*(*a[N])())();


不过这其中只有一个问题,就是如果我用*取得函数指针的值,得到的是什么*((*a[N])()),函数的地址?那如果这样的话,书上给的答案好像也没有什么问题啊!

可是问题出在哪呢?




正点原子逻辑分析仪DL16劲爆上市
回复

使用道具 举报

25

主题

683

帖子

0

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
1350
金钱
1350
注册时间
2012-4-25
在线时间
195 小时
发表于 2013-8-24 09:45:33 | 显示全部楼层
个人理解2个都 是对的,

 char *(*(*a[N])())()  --->  *(*a[N])() ---> (*a[N])

函数 指针 声明形式 void (*pFunction)( ) ;  调用形式  (*pFunction)(); 

如上  (*a[N])()  相当于 具体调用了, 再 *(*a[N])()  又变成指针了。
1-1
回复 支持 反对

使用道具 举报

38

主题

2061

帖子

6

精华

论坛大神

Rank: 7Rank: 7Rank: 7

积分
3273
金钱
3273
注册时间
2012-1-16
在线时间
37 小时
发表于 2013-8-24 09:47:43 | 显示全部楼层
函数指针不就是函数的地址么?你还用*取得函数指针的值干嘛
站在巨人的肩膀上不断的前进。。。
回复 支持 反对

使用道具 举报

24

主题

91

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
377
金钱
377
注册时间
2013-6-19
在线时间
53 小时
 楼主| 发表于 2013-8-24 10:23:00 | 显示全部楼层
回复【3楼】xiaoyan:
---------------------------------
我是按那个结果反推的
回复 支持 反对

使用道具 举报

24

主题

91

帖子

0

精华

中级会员

Rank: 3Rank: 3

积分
377
金钱
377
注册时间
2013-6-19
在线时间
53 小时
 楼主| 发表于 2013-8-24 10:23:45 | 显示全部楼层
回复【2楼】mygod:
---------------------------------
感觉有点道理,谢谢
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则



关闭

原子哥极力推荐上一条 /2 下一条

正点原子公众号

QQ|手机版|OpenEdv-开源电子网 ( 粤ICP备12000418号-1 )

GMT+8, 2024-11-23 13:47

Powered by OpenEdv-开源电子网

© 2001-2030 OpenEdv-开源电子网

快速回复 返回顶部 返回列表