Condividi tramite


istruzioni di avanzamento e contrassegnati come C)

goto trasferisce il controllo dell'istruzione a un'etichetta.L'etichetta specificata deve risiedere nella stessa funzione e può essere visualizzato prima di solo un'istruzione nella stessa funzione.

Sintassi

  • istruzione:
    contrassegnare-rendiconto

    salto-rendiconto

  • salto-rendiconto:
    di avanzamento identificatore ;

  • contrassegnare-rendiconto:
    identificatore : istruzione

Un istruzione è significativo solo a un oggetto goto istruzione; in qualsiasi altro contesto, un'istruzione contrassegnato viene eseguito indipendentemente dall'etichetta.

In salto-rendiconto deve risiedere nella stessa funzione e può essere visualizzato prima di solo un'istruzione nella stessa funzione.Il set di identificatore nomi che seguono a goto dispone di un proprio spazio dei nomi pertanto i nomi non interferiscono con altri identificatori.Le etichette non possono essere ridichiarato.vedere Spazi dei nomi per ulteriori informazioni.

Ben programma lo stile utilizzare interruzione, continuaree return istruzione di preferenza a goto quando possibile.Da interruzione chiusura dell'istruzione solo da un livello del ciclo, a goto può essere necessario per uscire da un ciclo interno di un ciclo fino annidato.

In questo esempio viene illustrato goto istruzione:

// 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 );
}

in questo esempio, a goto trasferisce il controllo dell'istruzione nel punto contrassegnato stop quando i è pari a 5.

Vedere anche

Concetti

Le istruzioni (C)