goto instructions et étiquetées (c)
Transfère le contrôle d'instruction d' goto à un nom.Le nom doit se trouver dans la même fonction et peut apparaître avant qu'une instruction dans la même fonction.
Syntaxe
instruction:
étiqueter-instructioninstruction de saut
instruction de saut:
identificateur ;degotoétiqueter-instruction:
instruction deNuméro de téléphone : d'identificateur
Une étiquette d'instruction est uniquement explicite pour une instruction d' goto ; dans n'importe quel autre contexte, une instruction étiquetée est exécutée sans tenir compte du nom.
Une instruction de saut doit se trouver dans la même fonction et peut apparaître avant qu'une instruction dans la même fonction.L'ensemble des noms d'identificateurs suivant goto possède son propre espace de noms afin que les noms n'interfèreront pas avec d'autres identificateurs.Les noms ne peuvent pas être redéclaré.Consultez Les espaces de noms pour plus d'informations.
Il est conseillé d'ajouter le style utiliser saut, continuez, et l'instruction d' return plutôt que goto autant que possible.Étant donné que l'instruction de saut fermeture d'un seul niveau de la boucle, goto peut être nécessaire pour quitter une boucle d'une boucle profond.
Cet exemple illustre l'instruction d' goto :
// goto.c
#include <stdio.h>
int main()
{
int i, j;
for ( i = 0; i < 10; i++ )
{
printf_s( "Outer loop executing. i = %d\n", i );
for ( j = 0; j < 3; j++ )
{
printf_s( " Inner loop executing. j = %d\n", j );
if ( i == 5 )
goto stop;
}
}
/* This message does not print: */
printf_s( "Loop exited. i = %d\n", i );
stop: printf_s( "Jumped to stop. i = %d\n", i );
}
Dans cet exemple, un contrôle de transmission d'instruction d' goto au point étiqueté stop lorsque est égal à 5. d' i .