两者的侧重点都在后面,指针函数本质是函数,指针函数有什么作用呢?(待续)
1.指针函数 _type_ *function(int,int)
_type_ *function(int,int) 和普通函数int function(int,int)类似
只是返回的数据类型不一样而已,_type_ *function(int, int)返回的是指针地址,int function(int,int)返回的是int型数据
2.函数指针_type_ (*function)(int,int)
_type_ (*function)(int,int)只是一个指针,变量指针是指向一个变量的地址,结构体指针是指向一个结构体的首地址,
而函数指针是指向一个函数的地址,它是一种类型,比int,char高级的类型。
#include <stdio.h> int sum = 0; int *getAdd(int a,int b){ sum = a + b; return sum; } int getDiff(int a,int b){ return a>b?(a-b):(b-a); } int main(int argc, const char * argv[]) { int *pTemp,Temp; pTemp = getAdd(100, 200); printf("Add result:%d ",*pTemp); Temp = getDiff(300,500); printf("Diff result:%d ",Temp); return 0; }
#include <stdio.h> int (*fucntion)(int,int); int Max(int a,int b){ return a>b?a:b; } int Min(int a,int b){ return a<b?a:b; } int main(int argc, const char * argv[]) { int Num1 = 20,Num2 = 20; fucntion = Max; printf("Max result:%d ",fucntion(Num1,Num2)); fucntion = Min; printf("Min result:%d ",fucntion(Num1,Num2)); return 0; }
参考来自:https://www.cnblogs.com/hwli/p/9831114.html