今天和师姐讨论问题,在java中运行:
int i = 0;
i = i ++;
打印 i 时发现 i 的值为 0;
在C语言中运行:
int i = 0;
i = i ++;
打印 i 时发现 i 的值为1。
在网上找到的理由是:http://blog.sina.com.cn/s/blog_605f5b4f0100khy0.html
又发现一个特别简介的解释,在这里说一下:
i = i++等同于:
temp = i ;
i = i + 1 ;
i = temp ;
同样拿出 i = ++i 来解释下:
i = i + 1 ;
temp = i ;
i = temp;