有关c语言宏的一个问题

来源:百度知道 编辑:UC知道 时间:2024/06/01 05:08:42
源程序如下
#include<stdio.h>
int inc(int a)
{ return(++a); }
int multi(int*a,int*b,int*c)
{return(*c=*a**b);}
typedef int(FUNC1)(int in);
typedef int(FUNC2) (int*,int*,int*);
void show(FUNC2 fun,int arg1, int*arg2)
{
FUNC1 p=&inc;
int temp=p(arg1);
fun(&temp,&arg1,arg2);
printf("%d/n",*arg2);
}
main()
{
int a;//局部变量a为0;
show(multi,10,&a);
return 0;
}
问程序运行结果?答:110
就是“typedef int(FUNC1)(int in);
typedef int(FUNC2) (int*,int*,int*);”
看不懂啊,哪位高手帮帮忙,能告诉这两句是什么意思吗?谢了

typedef int(FUNC1)(int in); 定义一种函数引用
你可以看一下typedef的含义参考
http://baike.baidu.com/view/1283800.htm