以下表达式如何工作i = + i * i;?

时间:2016-06-03 04:57:30

标签: expression

我找到了一个表达式:

int i=2;
i=+i*i;

它产生i = 4。我想有人对此有意见。

1 个答案:

答案 0 :(得分:1)

我认为它是一些类似C语言。在这种情况下,有一个“一元加”运算符,它看起来像+i并返回i的值。

因此根据operator prescendence rules i=+i*i;分解为i = ((+ i) * i),基本上相当于i *= i

我们知道2 * 2 = 4,所以你得到的结果是完全合法的。