我正在为变量start
编写一个for循环,其值已经在程序的其他地方计算过了。
执行for(start; start<end; start++)
会发出警告,
for(start=start; start<end; start++)
似乎是一项不必要的任务。
我能想到的其他选项如下 - 这是否可以,或者你会把它归类为糟糕的编码风格?
for(; start<end; start++){
//do stuff
}
答案 0 :(得分:4)
这不是绰号编码风格恕我直言,但也许你想用while
代替?
while (start < end)
{
//do stuff
++start;
}
这只是一个品味问题,真的。
答案 1 :(得分:2)
保留for
循环的任何部分都可以。抛弃所有部分也是可以的 - 事实上,它是表达无限循环的惯用方式,如K&R book.
你应该仔细考虑你的其他选择; while
或do
/ while
循环可能会提供更具可读性的替代方案。
答案 2 :(得分:1)
是的,你可以这样做。但是,我建议将start分配给像i
之类的变量,因为现在你在迭代时改变start的值。
答案 3 :(得分:0)
您可以按以下方式编写代码以获得所需的结果:
while(start++<end){
// your code
}
您可以利用在条件语句中检查变量名称之后添加“++”的事实。