[stmt.for]

8 Statements [stmt]

8.6 Iteration statements [stmt.iter]

8.6.4 The for statement [stmt.for]

1

#

The for statement

is equivalent to

{
   init-statement
   while ( condition ) {
      statement
      expression ;
   }
}

except that the init-statement is in the same scope as the condition, and except that a continue in statement (not enclosed in another iteration statement) will execute expression before re-evaluating condition.

[Note 1: 

Thus the first statement specifies initialization for the loop; the condition ([stmt.pre]) specifies a test, sequenced before each iteration, such that the loop is exited when the condition becomes false; the expression often specifies incrementing that is sequenced after each iteration.

— end note]

2

#

Either or both of the condition and the expression can be omitted.

A missing condition makes the implied while clause equivalent to while (true).