结果为8
代码有误。
fun((a++;b++,a+b),c++)
这里分号修改为逗号。
#include
fun(int x ,int y) {return(x+y);}
void main()
{
int a=1,b=2,c=3,sum;
sum=fun((a++,b++,a+b),c++);
printf("%d\n",sum);
}
你的程序 很多小错误 。。
sum=8;
你的意思我大概明白 函数的返回值是 两个数相加
还有 比如 sum=(1,2,6)+3 = 9
这种题有二义性,在不同编译系统下结果不同。在VC++ 2005下测试,结果为:
8
还有
sum=fun((a++;b++,a+b),c++); //a++后面的分号要改为逗号才行。
我在linux上编译测试了,结果等于8
a++; 我不知道是不是写错了,在我这里编译不过,如果这个; 是, 结果是8