GOTO |
Aller à |
---|---|
ISO C99 |
Syntaxe
statement := goto identifier ; |
Paramètres
Nom | Description |
---|---|
identifier | Ce paramètre permet d'indiquer l'étiquette vers lequel les instructions doivent faire le saut |
statement | Ce paramètre permet d'indiquer une instruction. |
Description
Ce mot réservé permet de faire un saut d'exécution à une étiquette.
Remarques
- Il est conseillé d'utiliser le moins possible ce mot réservé car on peut rapidement se retrouver dans un code spaghetti, laquelle deviendra illisible pour celui n'ayant pas créer le programme. Il est tellement mal vue, qu'en langage de programmation Java, bien que le mot réservé soit réservé, il n'est toujours pas inclut dans les possibilités de la compilation du programme.
- Une situation où un goto peut être utile est s'il devient nécessaire de sortir d'une structure profondément imbriquée, telle que des boucles imbriquées. Une instruction break ne peut pas faire cela car elle ne peut sortir que d'un niveau à la fois.
Exemple
Cet exemple permet de passer à la deuxième boucle si une corruption du compteur i se produit :
Essayer maintenant !
- #include <stdio.h>
- #include <stdlib.h>
-
- int main()
- {
- int i,j;
- for(i=0;i<=10;i++) {
- if(i < 0) goto BreakAll;
- }
- for(j=0;j<=10;j++) {
- printf("J = %i\n",j);
- }
- BreakAll:
- return 0;
- }
on obtiendra le résultat suivant :
J = 0J = 1
J = 2
J = 3
J = 4
J = 5
J = 6
J = 7
J = 8
J = 9
J = 10
Voir également
Langage de programmation - C - Références de mots réservés (mots clefs) - break
Langage de programmation - C - Références de mots réservés (mots clefs) - continue
Langage de programmation - C++ - Références de mots réservés (mots clefs) - goto
Langage de programmation - C# - Références de mots réservés (mots clefs) - goto
Dernière mise à jour : Mardi, le 28 juillet 2015