Home > Software design >  Iterative Statements
Iterative Statements

Time:11-27

So, I have been studying iterative statements for a report. While I was reading, I came across the developmental history of definite iteration and eventually learn the for loop. We know that the syntax for the for loop in C,C , and java is

for (expression1; expression2; expression3)
   statement

And it says here that we can omit any of the expression and that it is legal to have a for loop that look like this

for (;;)

My question is how does that work? I cant find any more resources for this one.

CodePudding user response:

A for loop declared as:

for (init-statement; condition; iteration-expression) body;

Is equivalent to:

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

It's easy to see how init-statement or iteration-expression could be omitted. If the condition is omitted, it is assumed to be true.

A reasonable resource that explains this is the Explanation section of the for loop documentation at cppreference.com.

CodePudding user response:

Basically, for (;;) is legal, but you will need to put something inside the body of that for loop, otherwise the loop will never stop.

int counter = 0;
int limit = 5;

for (;;) {
    if (counter > limit) break;
    counter  ;
}
  • Related