函数指针数组的指针
下面定义一个简单的函数指针数组的指针:
```
char* (*(*pf)[3])(char* c);
```
pf是一个指针,这个指针指向一个有3个元素的数组,每个元素是一个参数为char* ,返回值为char *的指针。
示例:
```
#include
#include
char* func1(char* c)
{
printf("%s\n", c);
return c;
}
char* func2(char* c)
{
printf("%s\n", c);
return c;
}
char* func3(char* c)
{
printf("%s\n", c);
return c;
}
int main()
{
char* (a[3])(char c);
char* ((pf)[3])(char* c);
pf = &a;
a[0] = func1;
a[1] = func2;
a[2] = func3;
printf("%p\n", a[0]);
printf("%p\n", a[1]);
printf("%p\n", a[2]);
(*pf)0; // pf[0]0;
(pf)1; // pf[0]1;
(pf)2; // *pf[0]2;
return 0;
}


浙公网安备 33010602011771号