函数指针 与 指针函数 的 区别

函数指针 与 指针函数 的 区别
结论:括号的区别。
 
不带括号 是 指针函数 ,意思是 函数返回值 的 类型 是一个指针 ,函数名和* 直接没有括号。
 
int* fun(int x,int y);
 
函数指针 带有括号,其本质是一个指针变量,该指针指向这个函数。总结来说,函数指针就是指向函数的指针。
int (*fun)(int x,int y);
指针函数 和 函数指针 老是弄混,如何记住。
 
根据整形指针,来记住函数指针,函数指针记住了,指针函数也就记住了,举个例子:
int *a; 
// a 描述为 一个整形指针变量。这里整形在前面,指针在后面。
// 因此 同样的 ,函数指针 是 函数在前面,指针在后面,就是一个指针变量。
函数指针 使用 typedef 后 更加方便使用
typedef void (*gpio_inter_callback_t)( void *pvParameters );
// 形参 方式 使用 uint32_t bsp_gpio_intr_init( gpio_inter_callback_t p_callback );
 

原文地址:https://www.cnblogs.com/suozhang/p/14918845.html