函数指针与函数指针数组

本文详细介绍了函数指针的概念,包括如何定义和使用函数指针,以及通过函数指针调用函数的方式。此外,还讲解了函数指针数组的定义和应用,如何创建一个包含多个函数的指针数组,并演示了如何调用数组中的特定函数。通过实例展示了函数指针和数组在实际编程中的运用。
摘要由CSDN通过智能技术生成

函数指针与函数指针数组

函数指针

每个函数都是有地址的,调用函数实际上就是找到该函数的地址。
使用函数指针可以传递函数。
定义:
在这里插入图片描述
定义函数指针有多种方法如:
在这里插入图片描述
使用auto需要注意,在定义时必须要初始化,但可以是任意函数类型。
在这里插入图片描述
还可以使用typedef定义,但注意,typedef定义的是一个类型,真正定义需要:
在这里插入图片描述
函数指针的用法:
在这里插入图片描述
定义一个ptrCalc函数指针,指向att()函数,在实行print_result()函数,把ptrCalc,num1,num2传入。
其中ptrCalc实际上就是att()函数。
在这里插入图片描述
print_result()函数的运行过程,由于传入的函数指针名为ptr,调用ptr实际上就是调用函数att()。
在这里插入图片描述

函数指针数组

更为明确的说法是构成指向函数的指针数组。需要用到typedef来创建。
定义如下:
在这里插入图片描述
ptr意思是创建了一个函数指针数组类型,fb则为函数指针数组,将函数test1,test2,test3传给fb。
在这里插入图片描述
则fb已经是一个函数指针数组,并且数组中有3个函数。
在调用时只需要调用数组中第几个函数即可,注意数组的下标从0开始。
在这里插入图片描述
表示调用函数指针数组中第二个函数也就是test2。
运行结果:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值