广州C/C++培训
达内广州岗顶中心

18087159764

热门课程

c语言学习笔记分享——函数指针数组的指针

  • 时间:2016-08-25
  • 发布:广州C++培训
  • 来源:C++技术网

函数指针就够一般初学者折腾了,函数指针数组就更加麻烦, 现在的函数指针数组指针就更难理解了。

其实,没这么复杂。这里的函数指针数组指针不就是一个指针嘛。只不过这个指针指向一个数组,这个数组里面存的都是指向函数的指针。

下面就定义一个简单的函数指针数组指针:

char * (*(*pf)[3])(char * p);

这里的 pf 确实是实实在在的指针。这个指针指向一个包含了 3 个元素的数组;这个数字里面存的是指向函数的指针;这些指针指向一些返回值类型为指向字符的指针、参数为一个指向字符的指针的函数。其实你不用管这么多,明白这是一个指针就 ok 了。

下面列一个简单的例子:

#include

#include

char * fun1(char * p)

{

printf("%s\n",p);

return p;

}

char * fun2(char * p)

{

printf("%s\n",p);

return p;

}

char * fun3(char * p)

{

printf("%s\n",p);

return p;

}

int main()

{

char * (*a[3])(char * p); char * (*(*pf)[3])(char * p); pf = &a;

a[0] = fun1; a[1] = &fun2; a[2] = &fun3;

pf[0][0]("fun1");

pf[0][1]("fun2");

pf[0][2]("fun3");

return 0;

}

上一篇:C/C++语言字符串操作总结(花很长时间整理的)
下一篇:c语言学习笔记分享——int *p =NULL 和*p=NULL有什么区别

华硕ZenBook/VivoBook全面更新

中国工程师破解苹果iOS11.2支持7.5W无线快充

HTC推出VR一体机:骁龙835+AMOLED屏

REM响应式编程是个什么鬼?

选择城市和中心
贵州省

广西省

海南省