【问题标题】:Can you explain me (int i=0; i<8; i++, data>>=1)?你能解释一下(int i=0; i<8; i++, data>>=1)吗?
【发布时间】:2016-07-20 17:51:47
【问题描述】:

我知道 for 循环需要采用以下形式 for(初始化;条件;增量) 在这种情况下还有第四部分,你知道它是做什么的吗?

【问题讨论】:

  • 只有 3 个部分。您的代码中只有两个 ;。也许你把逗号误认为是分号。
  • C 逗号操作符 很少见。如果我们在这里还没有合适的答案,写一个也无妨:)
  • 我没有犯任何错误。我测试了代码,它可以工作。因此这个for循环是正确的。代码中使用的另一个 for 循环是 for (int b=0; b>=8)。我很困惑
  • 这甚至是有效的语法吗? “数据>>=1”? ..不可能。
  • @GisMOfx 和 M.M 感谢您的帮助。我真的很感激

标签: arduino


【解决方案1】:

没有第四部分。第三部分包含逗号运算符,它允许您将各种语句放在一起,就好像您不能使用 {} 的语句一样。几乎我用过它们的唯一一次就是这样(和while),你可以在一个地方做不止一件事。

在这种情况下,循环的最后一部分是在每次迭代结束时增加 i (i++) 和将 data 右移一次(除以 2)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-10-14
    • 2022-01-07
    • 1970-01-01
    • 2016-03-18
    • 1970-01-01
    • 1970-01-01
    • 2012-01-13
    • 1970-01-01
    相关资源
    最近更新 更多