关于*=是什么意思和用法

2019-07-20 17:06发布

也许这个问题对你们有些高手来说没什么,但我是真的需要知道,查百度也没找到,请各位高手不要吝啬赐教。
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
shuaigew88
1楼-- · 2019-07-20 20:21
 精彩回答 2  元偷偷看……
学弟007
2楼-- · 2019-07-20 21:56
 精彩回答 2  元偷偷看……
2449164582
3楼-- · 2019-07-21 00:41
2楼正解
yyx112358
4楼-- · 2019-07-21 04:37
效果上相当于a=a*b;但是实际的效率更高
a=a*b;实际上是这样的:
1.生成a的副本,记为a'
2.计算a'*b
3.将结果赋值给a
4.销毁a'
而a*=b;就只需要:
1.将a乘上b
详细了解需要汇编的知识,感兴趣可以去看
ianhom
5楼-- · 2019-07-21 07:53
yyx112358 发表于 2017-1-24 13:29
效果上相当于a=a*b;但是实际的效率更高
a=a*b;实际上是这样的:
1.生成a的副本,记为a'

我个人觉得“*=的效率高”这点可能要看编译器吧

我试验过了IAR for ARM 6.7
分别从优化等级、变量位置(局部变量,全局变量)对比了a = a*b 和 a *= b汇编后的结果。
两个汇编后完全一致的。
leasun
6楼-- · 2019-07-21 08:52
 精彩回答 2  元偷偷看……

一周热门 更多>