【问题标题】:How does a One Line While Loop Work in C? [duplicate]单行 While 循环如何在 C 中工作? [复制]
【发布时间】:2019-07-25 15:39:14
【问题描述】:

我试图了解下面这段代码的工作原理。

while (c->next != NULL) c = c->next;
c->points[c->pointNum] = p;
c->pointNum++;

这里的第 2 行和第 3 行是否受到 while 循环的影响?单行while循环如何工作?

【问题讨论】:

    标签: c loops


    【解决方案1】:

    代码可以改写成这样更清晰:

    // advance until c->next is NULL
    while (c->next != NULL) {
        c = c->next;
    }
    
    // Now c is the last node in the chain
    c->points[c->pointNum] = p;
    c->pointNum++;
    

    如您所见,您的表单利用了 C 语言的单行支持(一行长的块不需要用大括号括起来)。正如您所体验的那样,这种形式虽然更紧凑,但可能更令人困惑。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-23
      • 1970-01-01
      • 1970-01-01
      • 2020-10-21
      • 2022-01-21
      • 1970-01-01
      • 2019-01-22
      • 2015-01-06
      相关资源
      最近更新 更多