为什么For循环不能在我的程序中工作?

时间:2017-05-03 17:57:57

标签: c++ qt loops for-loop

刚写了一个程序,但我不知道为什么所有For循环都不能在我的程序中运行。这是我的计划:

.fusion-carousel .fusion-carousel-item img {
    width: auto;
    height: 146px;
    max-height: 146px;
    object-fit: contain;
}

当我在Qt中调试它时,debuger跳过循环。我不明白为什么?问题是什么?这是我运行程序并单击"计算":

时得到的输出

image1

听起来,程序一直工作到第一个For循环。

2 个答案:

答案 0 :(得分:3)

尝试使用i < Nmax代替i == Nmax

它跳过for循环的原因是因为i永远不等于Nmax。您在所有for循环中使用i == Nmax作为检查。

for(i=0 ; i == Nmax ; i++)中,您将i设置为等于0,然后检查它是否等于Nmax(41),这是不正确的,所以它永远不会发生进入循环,甚至一次。

答案 1 :(得分:2)

C ++不会“跳过”循环;你的逻辑错了。

for(i=0 ; i == Nmax ; i++)
//          ^^

循环的条件是“只要”谓词,而不是“直到”谓词。

您的所有循环都不会被输入,因为没有任何条件符合。

所以:

for (i = 0; i < Nmax; i++)

顺便说一句,你的代码非常难以阅读。丢失短变量名和gotos,同时引入记录注释和有意义的缩进。