Поведение точки с запятой после циклической декларации - PullRequest
1 голос
/ 02 февраля 2012

Большинство циклов for имеют синтаксис:

for(initializer; condition; incrementer) {
    // code
    // code
}

Если есть только одна строка кода, он может следовать этому синтаксису:

for(initializer; condition; incrementer)
    // code

Или

for(initializer; condition; incrementer) // code

Итак, мой вопрос: как это,

for(initializer; condition; incrementer)
    ;

или это,

for(initializer; condition; incrementer);

ведет себя?; является допустимым утверждением во многих языках программирования.Итак, означает ли ; в конце цикла for, что цикл должен продолжать цикл без операторов для выполнения, или ; считается оператором для выполнения и выполняет цикл этого оператора ;, пока цикл не завершится?1021 *

1 Ответ

2 голосов
/ 02 февраля 2012

В C-подобных языках (действительно, это единственное место, где это имеет смысл), ваше второе описание является правильным: пустое выражение выполняется как тело цикла.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...