最近在考虑for循环第三个参数是++i or i++,如果清楚了for循环各部分的执行顺序的话,其实这个问题无关紧要。
因为第三个参数的变化是留给第二个判断语句判断的,所以++i or i++ 的结果都是增一,判断结果一样。
for循环的执行顺序是:初始化--判断--函数体——然后for循环的第3句--判断——函数体---for循环的第三句--判断……
for(1; 2; 3)
A;
B;
执行顺序:先执行1,再执行2,接着是A,再3,再到2,进行判断,如果符合条件(如果不符合则跳出循环执行B),继续循环A->3->2,再判断如果符合继续A->3->2循环,如果不符合则跳出循环执行B。
循环语句for按照以下5个步骤执行:
(1)求解初值表达式。
(2)判断循环条件表达式,如果值为真(非0),则执行for语句循环体内部的语句,然后执行第3步;如果值为假(0),则跳出循环,执行第(5)步。
(3)求解更新表达式。
(4)跳回第(2)步重复执行。
(5)循环结束,执行for循环体后面的语句。