/**************函数指针************/
#include <stdio.h>
typedef int (*pFun)(int a,int b);
int add(int a,int b);
int sub(int a,int b);
int mul(int a,int b);
int div(int a,int b);
int main(void)
{
int a=3;
int b=2;
int result=0;
pFun p1=NULL;
p1=add;
printf("a+b=%d\r",p1(a,b));
p1=sub;
printf("a-b=%d\r",p1(a,b));
p1=mul;
printf("a*b=%d\r",p1(a,b));
p1=div;
printf("a/b=%d\r",p1(a,b));
}
int add(int a,int b)
{
return a+b;
}
int sub(int a,int b)
{
return a-b;
}
int mul(int a,int b)
{
return a*b;
}
int div(int a,int b)
{
return a/b;
}
函数指针运行结果:
a+b=5
a-b=1
a*b=6
a/b=1
pFun指针变量可以指向所有具有相同参数及返回值的函数(如上述代码中的add,sub,mul,div函数)