gpt4 book ai didi

language-agnostic - 继续陈述

转载 作者:行者123 更新时间:2023-12-04 18:14:41 25 4
gpt4 key购买 nike

想知道continue循环中的do...while(false)语句做什么,我模拟了一个简单的测试用例(伪代码):

count = 0;
do {
output(count);
count++;
if (count < 10)
continue;
}while (false);

output('out of loop');

令我惊讶的是:
0
out of loop

有点困惑,我将循环从 do...while更改为 for:
for (count = 0; count == 0; count++) {
output(count);
if (count < 10)
continue;
}
output('out of loop');

尽管功能上不相同,但目的实际上是相同的:使条件仅满足第一次迭代,然后在下一个条件继续(直到达到某个值,纯粹是为了停止可能的无限循环。)它们可能不会运行相同的条件次数,但此处的功能并不重要。

输出与以前相同:
0
out of loop

现在,让我们来看一个简单的 while循环:
count = 0;
while (count == 0) {
output(count);
count++;
if (count < 10)
continue;
}
output('out of loop');

再次,相同的输出。

这有点令人困惑,因为我一直认为 continue语句是“跳转到下一个迭代”。所以,我在这里问:在每个循环中, continue语句有什么作用?它会跳到这种情况吗?

((出于值(value),我在JavaScript中测试了上面的内容,但我认为这与语言无关... js至少必须具备正确的功能))

最佳答案

在for循环中,继续运行for语句的第三个表达式(通常用作某种迭代),然后运行条件(第二个表达式),如果条件为true,则运行循环。它不会运行循环的当前迭代的其余部分。

在while(或do-while)循环中,它仅运行条件,然后在条件成立时循环运行。它还不会运行循环的当前迭代的其余部分。

关于language-agnostic - 继续陈述,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6100799/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com