永发信息网

c语言指针求助

答案:3  悬赏:80  手机版
解决时间 2021-05-10 19:37
各位指针高手: int *(*(*p)[])(int (*p)()); 这句话什么意思?
最佳答案
一个指向元素类型为返回int*,接受返回int的函数指针的函数指针的数组的指针

#include <stdio.h>

int* f( int(*)() ) { printf( "strange pointer!\n" ); return 0; }

int main()
{
int* (*a[][1])( int (*)() ) = { f };
int *(*(*p)[1])(int (*p)()) = &a[0];
(*p)[0](main);
return 0;
}

解析这类特殊指针可以使用“左-右-左”方法。
全部回答
先从总体的看int* (指针1)(参数1);现在就分析<指针1><参数1><参数1>很简单就一个<函数指针><指针1>是指向一个<函数指针数组>的指针 分解后的代码是下面 #include <stdio.h> int F() { return 0; }int* F1(int (*)()){ printf("HelloWorld\n"); return 0; } int main(){ int* (*p1)(int (*)()); p1 = F1; int* (*p2[3])(int (*)()); p2[0] = p1; int* (*(*p3)[3])(int (*)()); p3 = &p2; ((*p3)[0])(F); return 0;}

这个表达式好像是有问题

我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
梦幻西游里有人骗你钱怎么办?
初中生上网一般干什么
请人帮我去拿CF会员礼包..快开始了..领到的积
DNF战斗能偷学召唤的哪个招
什么产品可以去雀斑
英雄岛中宠物技能翻译书有什么用?
父亲八十岁生日祝福语,爸爸生日祝福语 生日祝
我的手机是诺基亚5000能不能下载QQ2009
Q号价值多少?
炫舞中的YY 是什么意思啊
青岛市南区哪租便宜房子?
微波消毒设备
感冒上火流鼻涕怎么办啊 难过啊 郁闷啊 求救
移动硬盘摔了下之后,修好的几率是多大?
我的空间怎么弄? 弄好看点啊
推荐资讯
求YY网游小说
离婚女方不来怎么办
蒜怎么腌制好吃,梅子的做法大全,梅子怎么做
教你把月光这两个字写漂亮?
腾迅公司成立多少年了!呵呵…这个问题肯定没
小气的人怎样应付才好??
图片上的字帮我打出来
魔兽世界20级那个副本好啊
女子得绝症离家出走,家人以为女儿死了,多年
1991年阴历八月初五出生的处女座的女孩受欢迎
求东方神起的QQ皮肤和壁纸,鼠标之类的
qq宠物怎样升级快n
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?