指针函数和函数指针

来源:互联网 发布:java字符串里的大括号 编辑:程序博客网 时间:2024/06/05 22:25
函数指针实质是一个指针,该指针指向函数的入口地址。定义一个函数指针:void (*func)(int ,int);再比如:int *p;  int max(int x,int y);p=max;//max函数的首地址赋给指针变量p
就是一个指针,指向一个函数,所以这个p也是一个函数指针,说白了它就只是一个指针,只是不过指向的是一个函数而已,就这么简单。就这样调用就可以了int result=(*p)(a,b)
归纳:搞清楚下面的例子你就知道这两个概念了
定义一个指向函数的指针变量时,一定要使用括号。比较下面的两个语句的含义:
float (*p1)(int x, float y);
float *p2(int x, float y);
第一句语句定义了一个指向函数的指针变量p1;第二个语句声明了一个函数p2,p2的形参为(int x, float y),返回值为一个float型的指针。
其实这两个概念完全是八竿子打不着的,关键是面试或者笔试人家会问你,考你,所以还是要弄清楚。。。
0 0
原创粉丝点击