我正在为一个变量编写一个 for 循环,该变量start
的值已经在程序的其他地方计算过。
做for(start; start<end; start++)
给出一个警告,并且
for(start=start; start<end; start++)
似乎是一个不必要的任务。
我能想到的另一个选择是以下 - 这可以吗,或者您会将其归类为糟糕的编码风格?
for(; start<end; start++){
//do stuff
}
恕我直言,这不是糟糕的编码风格,但也许您想改用 a while
?
while (start < end)
{
//do stuff
++start;
}
这只是口味问题,真的。
for
离开循环的任何部分都可以。省略所有部分也可以——事实上,这是表达无限循环的惯用方式,如K&R 书中所示。
不过,您应该仔细考虑其他选择;awhile
或do
/while
循环可能会提供更易读的替代方案。
是的,你可以这样做。但是,我建议将 start 分配给类似i
或其他变量,因为现在您在迭代时更改了 start 的值。
您可以按以下方式编写代码以获得所需的结果:
while(start++<end){
// your code
}
您可以利用在变量名后添加“++”在条件语句中检查后递增它的事实。