x *=2 和x=x*2,结果有区别吗
没啥区别,但是做为一个学过c的程序员,第二种写法太不像样了。
对于A=A+1,表达式A被计算了两次,对于复合运算符A+=1,表达式A仅计算了一次。一般的来说,这种区别对于程序的运行没有多大影响,但是当表达式作为函数的返回值时,函数就被调用了两次,而且如果使用普通的赋值运算符,也会加大程序的开销,使效率降低。
简化版,看着比较专业