HPlogo HP C/HP-UX Reference Manual: Workstations and Servers > Chapter 6 Statements

The for Statement

» 

Technical documentation

Complete book in PDF

 » Table of Contents

 » Index

The for statement evaluates three expressions and executes the loop body until the second expression evaluates to false.

Syntax

 for ([expression1] ; [expression2]; [expression3]) statement

Description

The for statement is a general-purpose looping construct that allows you to specify the initialization, termination, and increment of the loop. The for uses three expressions. Semicolons separate the expressions. Each expression is optional, but you must include the semicolons.

Expression1 is the initialization expression that typically specifies the initial values of variables. It is evaluated only once before the first iteration of the loop.

Expression2 is the controlling expression that determines whether or not to terminate the loop. It is evaluated before each iteration of the loop. If expression2 evaluates to a nonzero value, the loop body is executed. If it evaluates to 0, execution of the loop body is terminated and control passes to the first statement after the loop body. This means that if the initial value of expression2 evaluates to zero, the loop body is never executed.

Expression3 is the increment expression that typically increments the variables initialized in expression1. It is evaluated after each iteration of the loop body and before the next evaluation of the controlling expression.

The for loop continues to execute until expression2 evaluates to 0, or until a jump statement, such as a break or goto, interrupts loop execution.

If the loop body executes a continue statement, control passes to expression3. Except for the special processing of the continue statement, the for statement is equivalent to the following:

expression1;
while (expression2) {
statement
expression3;
}

You may omit any of the three expressions. If expression2 (the controlling expression) is omitted, it is taken to be a nonzero constant.

Example

For example:

     for (i=0; i<3; i++) {
func(i);
}

This example calls the function func three times, with argument values of 0, 1, and 2.