c语言,指针函数的程序,能举个简单点的例子吗?越简单越好啊
发布网友
发布时间:2022-04-28 23:09
我来回答
共1个回答
热心网友
时间:2022-06-25 00:09
#include <stdio.h>
/*求a+b*/
int plus(int a, int b) { return a + b; }
/*求a-b*/
int minus(int a, int b) { return a - b; }
/*求a*b*/
int multiply(int a, int b) { return a * b; }
/*求a/b*/
int divide(int a, int b) { return a / b; }
typedef int (*FUN)(int,int); /*定义基本四则运算的标准形式*/
char op[]="+-*/"; /*四则运算的符号*/
FUN fun[]={&plus, &minus, &multiply, ÷};/*四则运算的函数指针*/
/*下面的程序演示了如何用一个通用的函数指针连续处理多种不同的函数运算*/
int main(void)
{
int a = 6, b = 3, i = 0;
for(i = 0; i < 4; i++)
printf("%d %c %d = %d\n", a, op[i], b, (*(fun + i))(a,b));
return 0;
}
/*运行结果:
6 + 3 = 9
6 - 3 = 3
6 * 3 = 18
6 / 3 = 2
上面的程序说明,如果你有很多种类似的操作,形式上都一致,只不过内容有所不同,那么你可以用函数指针去代替这些函数,这样有时候会很方便
*/