1.指针函数
先看下面的函数声明,注意,此函数有返回值,返回值为int *,即返回值是指针类型的。
上面的函数声明又可以写成如下形式:
int* f(int a, int b);
让指针标志 * 与int紧贴在一起,而与函数名f间隔开,这样看起来就明了些了,f是函数名,返回值类型是一个int类型的指针。
2.函数指针
顾名思义,函数指针说的就是一个指针,但这个指针指向的函数,不是普通的基本数据类型或者类对象。
函数指针的定义如下:
通过与1中指针函数的定义对比可以看到,函数指针与指针函数的最大区别是函数指针的函数名是一个指针,即函数名前面有一个指针类型的标志型号“*”。
当然,函数指针的返回值也可以是指针。
上面的函数指针定义为一个指向一个返回值为整型,有两个参数并且两个参数的类型都是整型的函数。
- int (*f)(int, int); // 声明函数指针,指向返回值类型为int,有两个参数类型都是int的函数
本文详细解析了指针函数与函数指针的区别,包括它们的定义方式及应用场景,帮助读者理解这两种不同概念之间的差异。

被折叠的 条评论
为什么被折叠?



