以下是引用走刀口→超在2006-6-12 9:44:00的发言:
最后=5。
for(i=1;i++<4;);
有点想不明白。不过觉得问题应该出在最后这个“;”号上!!!!
解释下。。。。
最后=5。
for(i=1;i++<4;);
有点想不明白。不过觉得问题应该出在最后这个“;”号上!!!!
解释下。。。。
最后这个“;”号表示循环体是“空语句”(什么也不干)。
for(i=1;i++<4;); 的等价变换是
/////////////////////////////////////////////
i=1;
goto end;
Loop:
; /*do nothing*/
end:
if(i++ < 4)goto Loop;
/////////////////////////////////////////////
for(i=1;i++<4;); 与
for(i=1;i<4;i++);并不等价。因为后者等价于
/////////////////////////////////////////////
i=1;
goto end;
Loop:
; /*do nothing*/
i++;
end:
if(i < 4)goto Loop;
/////////////////////////////////////////////
落霞与孤鹜齐飞,秋水共长天一色! 心有多大,路有多宽。三教九流,鸡鸣狗盗。兼收并蓄,海纳百川。