inta=8;(a++)+=a为什么是错误的,(++a)+=(a++)是正确的还是错误的?求详解

腾讯2010的笔试题,... 腾讯2010的笔试题, 展开
 我来答
kaixingui2012
2011-09-17 · TA获得超过4.2万个赞
知道大有可为答主
回答量:1.4万
采纳率:81%
帮助的人:6188万
展开全部
(a++)+=a 是错的,因为先算括号里面的(完成a+=1),括号运算结束后,得到的是个值(a+1的值),数值本身不能再做 += 操作。

(++a)+=(a++) 是可以的,(++a)括号运算结束后,得到的是变量a, 或以做 += 运算

顶1楼,3楼,自己写程序不要这样写,让读程序的人难受
百度网友20ad377
2011-09-17
知道答主
回答量:35
采纳率:0%
帮助的人:7万
展开全部
因为(a++)是一个值,不是变量,所以会出错!
(++a)+=(a++)我个人认为也不对
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Tidus_forever
2011-09-17 · TA获得超过4399个赞
知道大有可为答主
回答量:2782
采纳率:100%
帮助的人:1826万
展开全部
顶1楼,这种语句,管他对的错的,你都不要用就是了。
谁写代码会写成这样,然后问别人,“我这代码有没有错,你看得懂不?”
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
121446881
2011-09-17 · TA获得超过580个赞
知道小有建树答主
回答量:261
采纳率:0%
帮助的人:214万
展开全部
两个都不对,因为左边不是变量,而是表达式,表达式是不能被赋值的
记住这点就行了,我在vs2008上也试过,都是不行的!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
giggsxbr
2011-09-17 · TA获得超过529个赞
知道小有建树答主
回答量:274
采纳率:0%
帮助的人:219万
展开全部
同意楼上的,谁会在代码中写成这样?那不纯粹是脑残吗?自己不好理解别人也不好理解

(a++)+=a里面,根据赋值运算符的定义,翻译过来就是(a++) = (a++) + a,这里明显有歧义

(++a)+=(a++),翻译过来也是有歧义的

还是想说:lz还是不要为这种垃圾问题伤脑细胞,知道赋值运算符怎么用就行了,知道a+=2这样的句子是什么意思就可以了
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
来自九十渡怜香惜玉&#x00A0;的大海
2011-09-17 · TA获得超过200个赞
知道答主
回答量:119
采纳率:0%
帮助的人:61.6万
展开全部
优先级的问题,还有副作用,具体是哪儿的不记得
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式