fun(int x, int y){return(x+y);} main() { int a=1,b=2,c=3,sum; sum=fun((a++,b++,a+b),c++); printf

要有步骤啊,谢谢
2024-12-30 05:28:30
推荐回答(4个)
回答1:

a=a+1,a=2;
b=b+1,b=3;
(a++,b++,a+b)是逗号表达式,为5;
c=c+1,c=4;
sum=fun(5,4);
最终结果,sum=5+4=9;

回答2:

a++=a+1=2,b++=b+1=3,a+b=5 因为逗号表达式 所以取值5,c++ c值为c+1=4 c++为3,带回x+y sum就是5+c++的值,而不是5+c的值 所以答案为8 选c

回答3:

这题你问的什么意思???是想问结果是什么么?如果只是问结果,那哪有什么步骤。。。
这个无非就考虑以下几个点:
1。 (x,y,z) 返回的是哪个;
2。 var++操作是在什么时候调用(传递前还是传递后);
3。参数传递(值,引用; 不过貌似不是这段代码关注的东西);
光知道结果没用,自己有编译环境的话,针对上面的点各写一小段代码跑一下,

搞明白上面3个问题,这个题的答案就出来了。

纯教学用代码。。。如果谁胆敢在工作中写这种代码,保准被leader狠K。

回答4:

没懂是什么意思 想做什么