读书人

大侠帮忙看下代码,该如何解决

发布时间: 2012-03-12 12:45:33 作者: rapoo

大侠帮忙看下代码
a *= a * a
请问这句代码是指什么意思?其中 *= 是指什么意思?请求帮忙。谢谢。

[解决办法]
a *= b 相当于 a = a * b
[解决办法]
a = a*a*a
[解决办法]
相当于a = a * a * a
[解决办法]
*的优先级比*=高,先执行*
所以a*=a*a;相当于a=a*(a*a);
[解决办法]
将a*a作为操作数再和a相乘,结果放到变量a中。

例如a=3,表达式的执行结果为a=27

类似的操作符还有+=,-=,无非是把计算结果再赋值给变量
[解决办法]
更据优先级*高,所以是:a=a*(a*a)
[解决办法]
a = (a * (a * a));
[解决办法]
就是a的3次方赋值给a,建议楼主去看下组合赋值操作符。

读书人网 >C++

热点推荐