C语言中自增与自减运算符只能作用于变量,为什么(i+j)++是违法的?i 是变量 j是变量 (i+j)不是变量吗?
i+j只是一个临时变量没有内存地址,而i++相当与i
+=
1,而(i+j)++则相当于(i+j)
=
(i+j)
+
1显然是说不通的。
再看看别人怎么说的。
+=
1,而(i+j)++则相当于(i+j)
=
(i+j)
+
1显然是说不通的。
再看看别人怎么说的。
温馨提示:答案为网友推荐,仅供参考
第1个回答 2020-03-26
i++
等同于
i
=
i
+
1;
那(i+j)
++
等同于
i
+
j
=
i
+
j
+
1;么
i+j是一个表达式,不是一个变量。
等同于
i
=
i
+
1;
那(i+j)
++
等同于
i
+
j
=
i
+
j
+
1;么
i+j是一个表达式,不是一个变量。