函数指针&&指针函数

这部分的内容对我一直是个盲区,今天想起来扫雷了,整理了这部分的内容,也希望帮助大家。

1、函数指针

如果在函数中定义了一个函数,在编译时,编译系统为函数代码分配一段存储空间,这段存储空间的起始地址(又称入口地址)称为这个函数的指针。

定义一般函数指针的形式:

      类型名   (*指针变量名)  (函数参数列表)

例子:int (*p)(int,int);

p是一个指向函数的指针变量。p的类型为:int(*)(int,int)表示。

2、指针函数

指针函数是一个函数,函数都有返回类型(如果不返回值则为无类型值),只不过指针函数返回类型的是某一类型的指针。

定义一般函数指针的形式:

      类型名   *函数名  (函数参数列表)

例子:int  *p(int,int);等价    (int *)   p(int,int);  

p是函数名,调用它以后能得到一个int *型(指向整形数据)的指针。

PS:“()” 为初等运算符,优先级高于“*”指针运算符,且“*”运算符是自右往左结合。就变成了 (int *)   p(int,int);  其实我觉得只要搞懂了运算符的先后结合顺序,这部本内容也就懂了。

声明:本内容为作者独立观点,不代表电子星球立场。未经允许不得转载。授权事宜与稿件投诉,请联系:editor@netbroad.com
觉得内容不错的朋友,别忘了一键三连哦!
赞 2
收藏 3
关注 17
成为作者 赚取收益
全部留言
0/200
成为第一个和作者交流的人吧