C语言中函数指针、指针函数、回调函数说明

 1、指针函数:是指函数的返回值类型是一个指针类型,本质是一个函数,如 int *function(void);这里可以认为是int* function(void);返回值是int*,是一个指针。

 2、函数指针:本质是一个指针,但是这个指针指向一个函数,这个指针就叫函数指针,如int (*function)(void)。

     从这里就可以看出来,指针函数、函数指针两个名词就看后面两字就可以区别了,是函数还是指针。

     另外,函数指针有两个用途:调用函数和做函数的参数。

例如:
int func(int x);  //声明一个函数  
int (*fp)(int x); //定义一个函数指针  
fp = func;         //将func函数的首地址赋值给指针fp 

int func(int x);  //声明一个函数
int (*fp)(int x); //定义一个函数指针
fp = func;        //将func函数的首地址赋值给指针fp    

 
 3、回调函数:就是一个通过函数指针调用的函数。如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用为调用它所指向的函数时,我们就说这是回调函数

原文地址:https://www.cnblogs.com/hgrical/p/5978591.html