(博客搬家,原 MyBlog)
初识问题
前段时间,一朋友说起一个有趣的程序,关于Java中的j=j++问题
public class Test{
public static void main(String [] args){
int j=0;
for(int i=0;i<100;i++){
j=j++;
}
System.out.println(j);
}
}
按照我们习惯的思维,j=j++表明j先自增,然后再赋值给“=”左边的变量j,然后再for循环100次,那么值应该为100
但是,在Java环境中运行出来为 0
问题扩展
首先我们第一步想的,会不会是我们自己的程序编写错误了呢,
额,好吧,程序代码并没有什么语法等错误,那么问题出现在哪里呢?
接下来我们就更换到C/C++频道来试试,我们就以C语言为例讲解
#include "stdio.h"
void main()
{
int j=