下列代码(C语言)的输出内容?

写出下列代码的输出内容 #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) { INCp=&inc; int temp =p(arg1); fun(&temp,&arg1, arg2); printf("%d\n",*arg2); } main() { int a; show(multi,10,&a); return 0; }

第1个回答  2019-02-13
INCp=&inc;
应该是
FUNC1
p
=
&
inc
吧?
整个
main
()
就执行了一个
show
(
multi,
10,
&a)
执行过程中,
tmp
=
inc
(
arg1
);
tmp
就是
10+1,
11;arg1
因为是传值,不受影响。
然后
fun
(
&tmp,
&arg1,
arg2)
fun
就是
multi,它把
tmp,
arg
的值乘起来赋值给
arg2
指向的位置,也就是
main
()
里面的
a,结果是
110
printf
的输出结果是
110
相似回答
大家正在搜