【C语言】函数指针、函数指针数组、函数指针数组的指针

一.函数指针

1.定义理解
函数指针:是一个指针,存放函数地址的指针。
函数的地址可以通过取地址函数名拿到,也可以通过函数名直接拿到。
2.函数指针
(1)定义一个函数test

void test(char *str)
{
    printf("%s\n",str);
}
int main()
{
    //函数指针的定义方式
    void (*p)(char *str) = test;
    return 0;
}

(2)函数指针的使用

//调用函数test,传参:zhangsan
(*p)("zhangshan");

这里的*没有起作用,它是让我们知道这是一个指针然后解引用了一下。所以可以简化一下:(下面的写法也正确)

p("zhangsan");

(3)一些函数指针举例

//add函数
int (*p)(int x,int y)=add;
//调用
p(2,3);
//sub函数
int (*p)(int x,int y)=sub;
//调用
p(2,3);

这些函数指针类型都相同,因此我们考虑能不能把这些函数指针放到一个数组中呢?接下来我们引入一个函数指针数组。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值