c语言编程问题,请教高手大哥,下面的程序什么意思?输出结果是多少?还望详细介绍一下,谢谢啦!*^_^*

2024-12-29 14:09:44
推荐回答(4个)
回答1:

(*p)()这应该是个函数指针。p=funa,p指向funa函数,x=sub(p,9,3)表示调用funa(9,3),所以x=12;

x+=sub(funb,8,3)同理可得x+=5,最终x=12+5=17.
函数指针我是在C++才学的,C语言的之前没看过。

回答2:

你这程序本身就是一堆错误 ... 别说输出了 编译都过不了

回答3:

你问问你们老师吧

回答4:

你是不是要这样:
#include
int funa( int a, int b)
{ return a+b;}
int funb( int a, int b)
{ return a-b;}
int sub( int (*t)(int a, int b), int x, int y)
{ return((*t)( x,y));}
void main()

{
int x, (*p)(int a, int b);
p=funa;
x=sub(p,9,3);
x+=sub(funb, 8, 3);
printf("%d\n", x);
}
输出17