在最后哪那一点的叙述不是很懂,所以写上来问问各位大虾,是这样的有几个运算式子,依次是:int i=3; print ("%d,%d\n",i,i++); 结果是 4,3
int i=3;j=i+++i+++i++;printf("%d,%d\n",j,i) 结果是12,6
怎么看到看不明白呢
a++ 是先参入运算后再自加1 而++a先自加1后再运算
例如我写的一个简单的求值
int a,b,s;
a=2; //把2赋给a
b=1 ; //把2赋给a
s=0;
a++; 若 ++a
s=a+b; //把a+b赋给s
s=3 s=4
同理 a-- 与 --a也一样
s=3 s=2
例如我写的一个简单的求值
int a,b,s;
a=2; //把2赋给a
b=1 ; //把2赋给a
s=0;
a++; 若 ++a
s=a+b; //把a+b赋给s
s=3 s=4
同理 a-- 与 --a也一样
s=3 s=2
温馨提示:答案为网友推荐,仅供参考
第1个回答 2011-04-05
c不太会,但是应给和c++差不多吧
第一个好像都是3,
在第二个中
,j=i+++i+++i++中由于i++ 是事后运算的,
所以你的好像又是是不对的,应该是9,6
第一个好像都是3,
在第二个中
,j=i+++i+++i++中由于i++ 是事后运算的,
所以你的好像又是是不对的,应该是9,6