前置 ++i 与后置 i++ · 取值与自增的先后
起点同为
int i = 3;
i++ 先取值再自增 · ++i 先自增再取值
j = i++ ;
后置
变量 i
3
变量 j
?
① 先把 i 的旧值 3 交给 j
② 之后 i 再自增(3 → 4)
结果
i = 4 j = 3
j = ++i ;
前置
变量 i
3
变量 j
?
① 先让 i 自增(3 → 4)
② 再把 i 的新值 4 交给 j
结果
i = 4 j = 4
两者都让 i 变 4,差别只在 j:后置取旧值 3、前置取新值 4
▶ 重播