【问题标题】:How can an empty for(;;) work? [duplicate]一个空的 for(;;) 如何工作? [复制]
【发布时间】:2015-12-06 16:08:00
【问题描述】:

空的 for 是如何工作的?

我已经看过这段代码(并且运行良好)

for(;;) {

我无法理解这是如何工作的或为什么

【问题讨论】:

  • C++ 充满了特殊的奇怪规则……这只是其中之一。
  • 这样阅读:for nothing, until no condition, and nothing changes。逻辑上总是true。因此这是一个无限循环。
  • @6502 - 这里没有什么特别的。它只是从for 的定义方式中脱离出来。
  • @PeteBecker: 完全正确...例如,我也可以写while() 或使用if() 来表示始终为真的条件。不是。
  • @6502 - 是的,ifwhile 的规范与 for 的规范不同。由于他们做的事情非常不同,这既不“特殊”也不“奇怪”。

标签: c++ for-loop while-loop


【解决方案1】:

while(true) 完全一样。
它会跳过所有条件,因此它只是空执行,因为在 for 中,表达式都是可选的(即,如果您选择不提供它们,则不必提供它们)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-05-08
    • 2012-12-24
    • 2021-10-12
    • 2023-01-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多