c语言的+ +是什么意思

别笑我 我什么都不懂 但想学 不如下面一道题目 对于c=++a*b来说,按表中所列顺序,+ +先执行,*后执行,所以+ + a执行后,a的值为4,由于+ +为前置运算,所以a的值4参与运算,C的值计算式为4*5=20而不是3*5=15了

怎么就变成20了 + +是什么意思啊 ?????哪位大哥 能教我 感激不尽

C语言中++的位置有两种,你遇到的情况是第一种++a,也就是++在变量的前面,这种就表示a先加1,等价于a=a+1,也就是a的值现增加1在参与其他的运算。还有一种就是++在后面,a++,这种情况就是a先参加运算,然后其值加1;如果你遇到的是这一种情况,才应该是15.
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-06-25
表示自增1,++的优先级比较高,高于*,所以先执行++a,后执行++a的返回值乘以5。
如果你需要3*5,那么必须写成c = (a++)*5或者c = (a*b),(a*b)这样的表达式不能被++运算。
第2个回答  2010-06-25
++a的意思是先把a的值加1,再进行计算,而a++是先进行后面的计算,计算完后再将a的值加1,所以本题a先累加变成4,再与b相乘
第3个回答  2020-01-13
第4个回答  2010-06-25
相似回答