C语言声明函数指针和函数指针的使用方法

//函数指针

//1 回忆主函数中调用函数的方法,函数名+()中的参数【参数可以没有】,【函数名与()联用,函数名代表函的地址,当与取地址符&联用是代表变量名】
//2 函数指针的声明方法:1.确定函数的类型 2.需要明确优先级
//3 声明函数指针:函数类型中间【即类型与()中间】加上(*p)【p为变量名称可任意设定】

#include<stdio.h>

int aa(int,int);//声明的函数类型为  int  (int,int);【函数类型为确定变量名】
typedef int (*PFUN)(int,int) ;//PFUN就是函数的指针int (* )(int,int)的别名
int main()
{
	/*int h=0;
	h=aa(1,2);
	printf("%d\n",h);*/
	//?—————————————? 可以用typedef起个别名简化书写
	/*int (*p)(int,int)=&aa;*///声明为函数指针int (*p)(int,int)为何*p需要加括号呢?因为单目运算是从右往左的如果没有括号,则类型为int *  { p(int,int)}形式花括号为示意。aa为函数名可以代表函数地址,但为什么要加取地址符&呢,因为这样方便大家去识别这行代码的目的是取得函数的地址。
  	PFUN p =&aa;//调用函数:函数指针加变量名等于函数的地址。PFUN p和*int (*p)(int,int)=&aa作用相同。
	printf("%d\n",(*p)(1,2));//地址间接引用
return 0;
}
int aa(int a,int b)
{
   int c=a+b;
   return  c;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值