主题:指针,函数,数组概念问题
stone198802
[专家分:0] 发布于 2010-07-22 00:23:00
本人刚看了点C语言的书,谭浩强的,自学,很多东西不懂
今天我看了指针,里面的概念很不清晰,望高手们指点下
例题:一个有10个指针的数组,,改指针指向一个函数,该函数有一个整形参数并返回一个整型值(变量int a)
求解,并说明下
本人对于指针的函数,函数的指针,指针的数组,数组的指针,指向函数的指针等,概念十分头疼,望解答,纠结中
回复列表 (共2个回复)
沙发
stone198802 [专家分:0] 发布于 2010-07-22 00:27:00
自己的问题
沙发自己做,在线等,然后睡觉
板凳
雪光风剑 [专家分:27190] 发布于 2010-07-22 07:05:00
lz到底是在玩抢沙发还是在提问……汗……
既然是例题,那应该有答案才对吧:)
如果写全了不好理解,我们来逐级把问题封装一下,就相对简单了。
首先封装传递int型参数返回int型变量的函数
typedef int FUNTYPE(int);
然后封装这种函数的指针
typedef FUNTYPE *FUNTYPE1;
那么题目中要求的指针数组的类型就是FUNTYPE1[10]
测试代码如下:
#include <stdio.h>
#include <stdlib.h>
typedef int FUNTYPE(int);
typedef FUNTYPE *FUNTYPE1;
int myfunc(int a)
{
return a;
}
int main(void)
{
FUNTYPE1 test[10];
test[0]=myfunc;
printf("%d",test[0](2));
system("pause");
}
上述代码在dev c++中调试通过
我来回复