自增问题
i=5;y=(++i)+(++i);
y的结果为什么是14而不是13? 6加7不是13,,是什么。。 //这与C语言底层的实现方式有关,如果你没有学过汇编,建议你按下面的方式来理解
/*y = (++i) + (++i); 两个(++i)是完全一样的对象,第一次++i将其本身更新为6,第二次++i将其本身更新为7,最终 y = 7 + 7 = 14. */
//如果你会java,可以用以下代码实现,你会发现结果是13
public class ex1 {
public static void main(String args[]){
int i = 5;
int y=(++i) + (++i);
System.out.println(y);
}
}
//这是Java和C底层处理的方式不同,如果想深究,请学习计算机组成原理 哦,谢谢!
页:
[1]