int i=1;int j=i++为什么i的值变了

如题所述

i++表示先引用i的值进行运算,此后+1并赋值给自己。
所以【int j=i++】,第一步是引用i的值1,将其赋值给j;第二步,i自身+1;最终i为2,j为1。追问

内存中是怎么走的

温馨提示:答案为网友推荐,仅供参考
第1个回答  2017-07-19
首先 i++ 就是个表达式 是 i = i + 1 的简写,所以 i 自然就 加了1
这里是 i ++ 意思就是先用后加 先将 1 赋给 j ,再自增。

如果是 ++ i 意思就是先加后用,先变成 2,再赋给 j
所以这里的 j 的值是1。
望您采纳。追问

内存中是怎么走的

追答

这种基本数据类型的变量,放在栈中,链表形式 顺序执行 就这么简单啊。

本回答被提问者采纳