Excuses moi de te reprendre yoda, mais while et for se comportent de la même façon !
Je t´es écrit un exemple en C. J´ai utilisé le preprocesseur pour que la demonstration soit plus convaincante ( :
- include < stdio.h>
- define FOR for(;
- define DO_F ; )
- define WHILE while(
- define DO_W )
- define THEN {
- define END }
int main ( )
{
/*
* premier exemple
*/
int i = 0;
FOR i ! = 0 DO_F THEN
printf ( "?\n");
END
WHILE i ! = 0 DO_W THEN
printf ( "?\n");
END
/* while et for retournent la même chose, c´est à dire: RIEN. */
/*
* deuxième exemple
*/
char *string = " deux-trois";
WHILE ( ´\0´ ! = *string) DO_W THEN
char c = *string++;
if ( ´-´ ! = c) {
printf ( "%c", c);
}
else {
printf ( "\n");
break;
}
END
/* retourne " deux", on peut donc quitter l´instruction while en cours. */
}