NAME
	for

SYNTAX
	for(init; expr2; expr3) statement;

DESCRIPTION
	Execute <init> once. Then, while <expr2> returns a non-zero
	value, execute <statement>. Every time <statement> has been
	executed, or a 'continue' statement has been executed, execute
	<expr3> before next loop.

        <init> is usually a series of one or more expressions (remember
        that assignments are expressions, too), separated by commas.
        Additionally it is also allowed to define new local variables
        here and assign them an initial value. The scope of such variables
        is the whole for statement.

        Examples for legal <init> expressions are:

           for (i = 0; ...
           for (i = 0, j = 0; ...
           for (i = 0, int j = i; ...
           for (int j = 4; ...

        Illegal <init> expressions are:

           for (int i; ...      : no value assigned
           for (int i += 4; ... : only plain assignments allowed

	A 'break' in the 'statement' will terminate the loop. A
	'continue' will continue the execution from the beginning of
	the loop.
