函数指针可以像一般函数一样,用于调用函数、传递参数。
函数指针变量的声明:
typedef int (*fun_ptr)(int,int); // 声明一个指向同样参数、返回值的函数指针类型
具体示例如下:
#include <stdio.h>
int max(int x,int y){
return x>y?x:y;
}
int main(void)
{
int(*p)(int,int)=&max;//&可以省略
int a,b,c;
int max1,max2;
printf("输入3个整数\n");
scanf("%d %d %d",&a,&b,&c);
max1=max(a,max(b,c));
max2=p(a,p(b,c));
printf("%d\n%d\n",max1,max2);
return 0;
}
输入3个整数
2 5 6
6
6