如何在范围内进行可变循环?

时间:2019-12-26 11:57:11

标签: c++

这是一个简单的(我想)

我只是想知道是否有任何方法可以使变量(例如int)在范围内循环? 现在这就是我要做的:

int someInt = 0, max = 10; 
while(1) // This loop is here just for increasing someInt
{
  someInt++;
  if (someInt >= max)
    someInt = 0;
}

是否没有其他技巧可以重置someInt?也许不使用if

谢谢!

3 个答案:

答案 0 :(得分:2)

只需使用余数运算符(%)。

  

二进制运算符%产生第一个操作数除以第二个操作数的整数除法的余数(在通常的算术转换之后;请注意,操作数类型必须是整数类型)。

int someInt = 0, max = 10; 
while(1) // This loop is here just for increasing someInt
{
  someInt = (someInt + 1) % max;
}

答案 1 :(得分:1)

在这里,我只需要在for循环内使用while循环:

int max = 10;

while(true) for(int someInt = 0; someInt < max; ++someInt)
{
    // do stuff here
}

答案 2 :(得分:0)

您可以简单地使用mod运算符。

int someInt = 0, max = 10; 
for(int i = 0 ; i < 100 ; i++) // This loop is here just for increasing someInt
{
  ++someInt;
  someInt = someInt % max;
  cout<<someInt;
}