(1) 定义一个指向数组的指针,该数组的类型是长度为5的int数组
eg:
int (* pbr) [5];
```c
**(2) 定义一个指向函数的指针**
普通函数: `float add(float a,float b);------->float (float ,float )`
**函数的指针:**
float (* pfun)(float,float); -------> float (*)(float,float)
typedef struct person per;
typedef float (*PFUN)(float,float); //给函数的指针取了个别名叫PFUN
//定义一个长度为4的函数指针数组,该函数的类型 float (float,float)
float (*pFun_arr[4])(float,float); sizeof(pFun_arr)=16
PFUN pfun_arr[4]={add,sub,mul,div};
## 程序例子:
```c
//函数的指针
#include<stdio.h>
float add(float a,float b)
{
return a+b;
}
float sub(float a,float b)
{
return a-b;
}
float mul(float a,float b)
{
return a*b;
}
float div(float a,float b)
{
return a/b;
}
int main(void)
{
//定义一个指向函数的指针 并取别名函数的类型 返回值类型 (形式参数列表)
// float (float,float)
typedef float (* PFUN) (float,float); //该函数的指针这个类型取了别名叫PFUN
//定义一长度为4的函数指针数组
PFUN pFun_arr[4]={add,sub,mul,div};
int i=0;
for(i=0;i<4;i++)
{
printf("%.1f ",pFun_arr[i](8,4));
}
printf("\n");
return 0;
}