test 1
main()
{ int x,(*p)(int,int);
p=funa;
x=sub(p,9,3);
x+=sub(funb,8,3);
printf(%d/n”,x);
}
funa(int a,int b)
{return a*b;}
funb(int a,int b)
{ return a%b;}
sub( int (*t)(),int x,int y)
{ return (*t)(x,y);}
test 2
main()
{ int x,(*p)(int,int);
p=funa;
x=sub(p,9,3);
x+=sub(funb,8,3);
printf(%d/n”,x);
}
funa(int a,int b)
{return a*b;}
funb(int a,int b)
{ return a%b;}
sub( int (*t)(),int x,int y)
{ return (*t)(y,x);}