黑马程序员技术交流社区

标题: 求助 [打印本页]

作者: chunjiang    时间: 2015-9-7 04:37
标题: 求助
int a = 3,b = 0;
b = a+++a+++++a;
求a,b的值?
作者: chunjiang    时间: 2015-9-7 05:03
没人吗?这个题一下子弄的自己对自增自减疑惑了
作者: 饭饭饭    时间: 2015-9-7 09:29
b = (a++)+(a++)+(++a)
作者: chunjiang    时间: 2015-9-7 14:11
饭饭饭 发表于 2015-9-7 09:29
b = (a++)+(a++)+(++a)

然后呢,你得出来b的值是多少?
作者: lionheartism    时间: 2015-9-7 16:52
chunjiang 发表于 2015-9-7 14:11
然后呢,你得出来b的值是多少?

最后b的值是3+4+5=12~
作者: chunjiang    时间: 2015-9-7 19:05
lionheartism 发表于 2015-9-7 16:52
最后b的值是3+4+5=12~

可答案却是13
作者: lionheartism    时间: 2015-9-7 19:40

你看看,VS编译结果

作者: TonyScript    时间: 2015-9-7 19:46
同学你这在Xcode中连编译都通不过,,话说这种题目在实际编程中一点用都没有,学习不能太钻牛角尖了。。

Snip20150907_44.png (19.15 KB, 下载次数: 25)

Snip20150907_44.png

作者: chunjiang    时间: 2015-9-7 21:38
lionheartism 发表于 2015-9-7 19:40
你看看,VS编译结果

把b换成c,c=a+++a+++++a
作者: chunjiang    时间: 2015-9-7 21:40
TonyScript 发表于 2015-9-7 19:46
同学你这在Xcode中连编译都通不过,,话说这种题目在实际编程中一点用都没有,学习不能太钻牛角尖了。。 ...

把b换成c,c=a+++a+++++a,来解释下,为什么会有那样的结果
作者: lionheartism    时间: 2015-9-8 07:53
chunjiang 发表于 2015-9-7 21:38
把b换成c,c=a+++a+++++a

如果换成如你所说的话,那么就不再存在自增自减运算符了,+号变成了单目的正和双目的加,最后结果是9
就是a+两个正a
作者: chunjiang    时间: 2015-9-8 10:41
lionheartism 发表于 2015-9-8 07:53
如果换成如你所说的话,那么就不再存在自增自减运算符了,+号变成了单目的正和双目的加,最后结果是9
就 ...

c = (a++)+(a++)+(++a);
结果?

作者: lionheartism    时间: 2015-9-8 14:20
chunjiang 发表于 2015-9-8 10:41
c = (a++)+(a++)+(++a);
结果?

括号里的优先级高先计算,+号又是左结合那么计算顺序就是 a++ a++ ++a,第一步,a++的返回值是3,此步过后a值变4;第二步,a++的返回值是4,此步过后值为5;第三部,++a的返回值是6,此步过后a值为6,最后结果就是3+4+6=13;
作者: coding_wang    时间: 2015-9-8 16:18
b=a++ + a++ + ++a=3+4+6=13
作者: coding_wang    时间: 2015-9-8 16:20
TonyScript 发表于 2015-9-7 19:46
同学你这在Xcode中连编译都通不过,,话说这种题目在实际编程中一点用都没有,学习不能太钻牛角尖了。。 ...

加上空格就能编译了~
作者: TonyScript    时间: 2015-9-8 18:02
coding_wang 发表于 2015-9-8 16:20
加上空格就能编译了~

我是复制他的原贴的,改了不尊重原作者,,重点是这种东西没意思
作者: zhuai68    时间: 2015-9-8 18:13
确定没写错?Xcode报错了

QQ20150908-1@2x.png (54.95 KB, 下载次数: 24)

QQ20150908-1@2x.png

作者: 王鹏华ios0826    时间: 2015-9-8 21:12
理解的不能!
作者: Judyisapunk    时间: 2015-9-8 21:33
b=3+4+6=13
作者: kylmetz    时间: 2015-9-8 21:34
同求啊,求大神解释




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2