我记得在C中看到一个非常优雅的“ for”循环构造,该构造会根据初始值是大于还是小于结束条件值来自动增加或减少循环变量。

换句话说,是这样的:

fadeUpDown(startVal, stopVal /*, stepSize */ ) {

    // SOME CODE THAT SETS UP WHETHER TO INCREMENT OR DECREMENT

    for (int i=startVal ; i != stopVal ; ### SOME TRICKY CODE ### ) {
        // The actual looped code
    }
}


再次搜索了很多代码后,我没有成功,所以我在这里,问是否有人可以帮助我。

编辑:我们都是整数。
在StopVal上进行的健全性检查是StepSize的整数增/减是在范围之外。
实际上,实际上我们只是跳过StepSize并将其设置为1。

最佳答案

眼镜蛇,例如简单方法:

int inc=startVal>stopVal?-1:1;
for (int i=startVal ; i != stopVal ; i+=inc ) {

09-11 20:19