您的位置:首页 > 其它

指向函数的指针作为参数时的使用方法

2014-03-27 21:25 549 查看
谭教授说,指向函数的指针作为参数是C语言实际应用中的一个比较深入的部分,那就等以后用到了,做个参考吧。
#include <stdio.h>

void min(int a,int b);
void max(int a,int b);
void add(int a,int b);
void fun(int a,int b,void (*p)(int x,int y));
int main()
{
int a,b,n,k=5,flag=1;
while(k--)
{
flag=1;
printf("Enter two numbers: ");
scanf("%d %d",&a,&b);
while(flag==1)
{
printf("Do you want to 1(max) or 2(min) or 3(add) with the two numbers?  ");
scanf("%d",&n);
switch(n)
{
case 1:
fun(a,b,max);
flag=0;
break;
case 2:
fun(a,b,min);
flag=0;
break;
case 3:
fun(a,b,add);
flag=0;
break;
default:
printf("Wrong input ,please enter again:  \n");
}
}
}
return 0;
}

void min(int a,int b)
{
printf("min=%d\n",a>b?b:a);
}
void max(int a,int b)
{
printf("max=%d\n",a>b?a:b);
}
void add(int a,int b)
{
printf("add is %d\n",a+b);
}
void fun(int a,int b,void(*p)(int x,int y))
{
(*p)(a,b);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐