【好程序员笔记分享】—— 函数结合指针的妙用

我们前面学过指针,当然最基础的函数也学过。当两者结合起来运用的时候,会爆发怎样的化学反应呢?我们来看一个两者结合妙用的例子。代码如下:

#include <stdio.h>
//加法运算
int sum(int a,int b)
{
    return a+b;
}
//减法运算
int minus(int a,int b)
{
    return a-b;
}
//乘法运算
int mul(int a,int b)
{
    return a*b;
}
//调用方法,随心所欲进行运算
void calculate(int (*p)(int ,int),int a,int b)
{
    int result = (*p)(a,b);
    //(*p)(a,b)也可以换成p(a,b); 这样就变成普通函数了。
    printf("计算结果是:%d\n",result);
}

int main(int argc, const char * argv[]) {
    //进行加法运算
    calculate(sum,8,2);
    //进行减法运算
    calculate(minus,8,2);
    //进行乘法运算
    calculate(mul,8,2);
    
    return 0;
}

上面代码中定义了加减乘三个函数,接收int类型的参数,返回int类型的值。另外,定义了带有两个int类型的形参int a,int b和一个指向函数的指针int (*p)(int , int);至于指向的函数是什么函数可以随意调用,这样就可以更好进行扩展。

好了,今天就学习这么多,好好理解掌握。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值