Die for-Schleife in C
- 〈iteration-statement 〉 ::=
- "for" "(" [〈clause 〉] ; [〈condition 〉]; [〈expression 〉] ")" 〈statement 〉.
Die Klausel 〈clause 〉 wird einmalig am Anfang der Schleife ausgewertet, falls sie ein Ausdruck ist. Sie kann auch eine Deklaration sein, die dann für den Rest der Schleife gilt.
Der Ausdruck 〈condition 〉 wird wie in einer while-Schleife interpretiert. Falls er fehlt gilt er als ungleich 0.
Der Ausdruck 〈expression 〉 wird nach jeder Ausführung der Anweisung 〈statement 〉 ausgewertet, falls er vorhanden ist.
Mit »for(;;)« kann dementsprechend eine Art von Endlosschleife eingeleitet werden.
- Beispiel
#include <stdio.h> /* printf */ int main( void )
{ { int i = 0; while( i - 4 ){ printf( "%d\n", i ); i = i + 1; }}
puts( "---" );
for( int i = 0; i - 4; i = i + 1 ){ printf( "%d\n", i ); }}- stdout
0
1
2
3
---
0
1
2
3