函数指针,顾名思义,它指向一个函数的入口地址,其定义及使用如下:
定义:returntype (*ptr) (typename variable,......)
返回类型 指针名称 指向函数的参数表。
你不能这样: returntype *ptr (typename variable,......) 这样会被理解为一个函数的定义。 你需要知道,函数名并不是函数类型的一部分,所以对于函数指针来说,函数的返回类型和参数表是很重要的。这两个东西要与函数指针完全匹配。
你定义了函数:int cal(int a,int b) int get(int a,int b)
定义函数指针:int (*ptr)(int ,int);
初始化:
int (*ptr)(int ,int)=cal;
int (*ptr)(int,int)=&cal; 将ptr赋值为cal函数,这两种是等价的。
调用:
int val1=3,val2=4;
ptr(val1,val2);
(*ptr)(val1,val2); 这两种调用方式也是完全等价的。
基本上就是这样了。^_^
函数指针
最新推荐文章于 2022-12-11 19:25:11 发布