计算机里 a+++b和++a+b有什么区别?举个例子
答案:2 悬赏:50 手机版
解决时间 2021-12-02 19:01
- 提问者网友:我没有何以琛的痴心不悔
- 2021-12-02 01:47
计算机里 a+++b和++a+b有什么区别?举个例子
最佳答案
- 五星知识达人网友:山君与见山
- 2021-12-02 02:34
a+++b会引起歧义,a+ ++b,还是a++ +b?
鉴于++是单目运算符,优先级高于+(加),可能被理解为a++ +b
。
在计算机编译的时候,一般会将含有++的表达式,通过增加临时变量拆分为几个表达式。所有前置++,变成前置的单独表达式;然后计算表达式,结果放在临时变量中;然后计算后置++;最后输出表达式计算结果:
比如(a++)+(++b)
变成:
++b;
tmp=a+b;
a++;
tmp;
根据这个原则,就可以知道结果了。表达式中使用++,尽可能简单。据说微软编程规则里面,严格禁止表达式混用++。
鉴于++是单目运算符,优先级高于+(加),可能被理解为a++ +b
。
在计算机编译的时候,一般会将含有++的表达式,通过增加临时变量拆分为几个表达式。所有前置++,变成前置的单独表达式;然后计算表达式,结果放在临时变量中;然后计算后置++;最后输出表达式计算结果:
比如(a++)+(++b)
变成:
++b;
tmp=a+b;
a++;
tmp;
根据这个原则,就可以知道结果了。表达式中使用++,尽可能简单。据说微软编程规则里面,严格禁止表达式混用++。
全部回答
- 1楼网友:酒醒三更
- 2021-12-02 02:58
++a+是a先自加一次后的结果再加上b;如a=1;b=3;那么结果就是a先自加一次a=2,然后再加b=3,结果等于5;
a+++b是先算a+b然后a再自加一次。结果是a=2;而a+++b=4追问a+++b还是不懂啊先算a+b不就是四吗然后a自加又对这个有什么影响啊追答a+++b意思是先算a+b,然后在算a++,a自加对a+b没有影响
a+++b是先算a+b然后a再自加一次。结果是a=2;而a+++b=4追问a+++b还是不懂啊先算a+b不就是四吗然后a自加又对这个有什么影响啊追答a+++b意思是先算a+b,然后在算a++,a自加对a+b没有影响
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯