我想知道是否有可能在C++中的for循环中动态增加。例如,我有以下代码:是否可以在C++中的for循环中动态增加?
for (int x = 0; x < maxX-1; x ++){
for (int y = 0; y < maxY-1; y ++){
for (int z = 0; z < maxZ-1; z++){
cout << "z = " << z << endl;
}
}
}
打印出
z = 0
z = 1
z = 2
...
但是,如果我是循环更改为:
amount = 2;
for (int x = 0; x < maxX-1; x ++){
for (int y = 0; y < maxY-1; y ++){
for (int z = 0; z < maxZ-amount; z+= amount){
cout << "z = " << z << endl;
}
}
}
然后我得到一个无限循环的
z = 0
z = 0
z = 0
z = 0
是不是有可能做到这一点?
它是一个无限循环还是Z循环在迭代之前迭代一次?如果maxZ小于或等于4,可能会发生这种情况。 – wrren
这是一个maxZ被错误地设置为错误值的情况,我应该抓到它。很高兴我知道这是可能的,虽然:) –
你确定这个增量并不是真的写成'z + amount'吗? - 或者另一种可能性:尽管你的想法是“金额”是0。 – UncleBens