指向函数的指针——程序有错,但我实在是找不到,求帮指出来:
#include<stdio.h>void main()
{
int process(int,int,(*fun)(int,int));
int res(int x,int y);
int min(int x,int y);
int max(int x,int y);
int a,b,c;
printf("Input a,b is:");
scanf("%d,%d",&a,&b);
c=process(a,b,max);
printf("the max is:%d\n",c);
c=process(a,b,min);
printf("the min is:%d\n",c);
c=process(a,b,res);
printf("the res is:%d\n",c);
}
int res(int x,int y)
{
int z;
z=x+y;
return z;
}
int min(int x,int y)
{
int z;
z=(x>y)?y:x;
return z;
}
int max(int x,int y)
{
int z;
z=(x>y)?x:y;
return z;
}
int process(int x,int y,(*fun)(int x,int y))
{
int z;
z=(*fun)(x,y);
return z;
}
功能大概是有一个函数process。第一次调用实现求a,b最大值~第二次调用实现求a,b小值,第三次调用实现a,b之和~