typedef struct
{
int a, b;
int *(max)(int,int);
}
Func;
int max(int a, int b)
/*
* 如何让这个函数不需要参数也能获得结构体中的a和b这两个变量?
**/
{
return a>b ? a:b;
}
int main()
{
Func f;
f.max = max;
f.a = 100;
f.b = 50;
printf("max: %d\n", f.max(f.a, f.b));
/*
* 以上一段代码是这样的,我想让它这样也能输出同样的结果:
* printf("max: %d\n", f.max());
* 不直接传参数给函数,能实现吗?
**/
return 0;
}
请问,用C语言的话,能实现上述的功能吗?