c++里
定义
结果是i=3,j=8;
再看看java里
结果是i=3,j=11;
分析:
对于c++编译器来说,(i++)+i*3这个式子是从右到左 读入的,先计算i*3,再加上i,最后是i自加1,所以j为8;
对于java编译器来说,(i++)+i*3这个式子是从左到右 读入的,先进来的是i,然后i再自加1为3,这样,i*3的值便为9了,最后整个值便是11了。
在C#里,(i++)+i*3为11。这样看来,在这点上,java编译器实现与C#是一样的。
c++里
定义
结果是i=3,j=8;
再看看java里
结果是i=3,j=11;
分析:
对于c++编译器来说,(i++)+i*3这个式子是从右到左 读入的,先计算i*3,再加上i,最后是i自加1,所以j为8;
对于java编译器来说,(i++)+i*3这个式子是从左到右 读入的,先进来的是i,然后i再自加1为3,这样,i*3的值便为9了,最后整个值便是11了。
在C#里,(i++)+i*3为11。这样看来,在这点上,java编译器实现与C#是一样的。