C语言中用指针将函数作为另一个函数的参数的方法

内容纲要

在开发过程中,可能会碰到这样的需求:

一个函数计算两个变量的结果,但是算法不确定,那么我们就可能需要定义多个类似的函数,其实把函数作为变量来实现这个功能,从逻辑上来看显得更加的合理,以下是耀骑网络在C语言中的实现方法:

/* Note:Your choice is C IDE */
#include “stdio.h”

//计算两个数的和
int sum(int a, int b)
{
return a+b;
}

//计算两个数的乘积
int multi(int a, int b)
{
return a*b;
}

//计算两个数的商
int div(int a, int b)
{
return a/b;
}

//计算两个数的差
int minus(int a, int b)
{
return a-b;
}

int calc(int a, int b,int (*p)(int,int))
{
return (*p)(a,b);
}

void main()
{
printf(“计算结果是%d\n”,calc(6,3,minus));

printf(“计算结果是%d\n”,calc(6,3,div));

printf(“计算结果是%d\n”,calc(6,3,sum));

printf(“计算结果是%d\n”,calc(6,3,multi));
}

发表评论

邮箱地址不会被公开。 必填项已用*标注

54 ÷ = 9