c语言问题 怎么算 急!!!!!

来源:百度知道 编辑:UC知道 时间:2024/05/08 17:09:33
#include<stdio.h>
void main()
{
int x,y;
x=2;
y=3;

y=x*(++x+x++,--x+x--);
printf("%d %d\n",x,y);
}

++x:x=3
x++:x=4
--x:x=3
y=3*(,3+3)=18//逗号运算符返回最后一个表达式的值,其它表达式由左到右先依次运算完。
x=2//x--是在给y赋完值后才运算
相当于:
x=2;
y=3;
++x;
x++;
--x;
y=x*(x+x);
x--

y=x*(++x+x++,--x+x--);中间是逗号??
前面应该有个函数定义吧
括号里面应该是++X=3,3+3=6,6++=7(先参与运算,再自加),--6=5,5+5=10,10--=9(10先参与运算,再自减)

常量好像写错了