您的位置:首页 > 其它

关于函数指针和指针函数的总结

2015-08-04 10:18 183 查看
1,函数指针,实质上是一个指针,只不过是指向函数的指针,我们都知道数组名代表的是数组元素的首地址,是一个常量,那么一个函数名也可以代表该函数第一条指令的地址,即函数的入口地址,是一个常量地址。我们可以用一个指针变量指向这个常量地址,用来调用这个函数,用这个函数指针的好处是可以指向多个函数的入口地址,如果需要,我们就可以调用某个函数。

2,指针函数,实质上是一个函数,既然是一个函数,那么它就有返回类型,只不过它返回的是指针,是一个地址。

3,函数指针的声明时,必须与它指向的函数的返回类型,参数类型,参数个数一致,否则编译器报错。

4,将函数的入口地址赋给一个函数指针时,只需将函数名赋给函数指针,不能将函数名后带的参数一起赋给函数指针。例如,声明一个函数指针和一个普通的函数。

  int (*p)(int a,int b) //函数指针

  int max(int m,int n)//普通的函数

  p=max      正确

  p=max(m,n)   错误

5,用函数指针来调用时,只需将函数名换成(*p),根据需要再加上实参即可

 

 6,函数指针只能指向函数的入口地址,不能进行p++,p--运算,来指向函数中间的某一条指令。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: