Funzione Perl goto

Descrizione

Questa funzione ha tre forme, la prima fa sì che il punto di esecuzione corrente salti al punto indicato come ETICHETTA. Un goto in questa forma non può essere utilizzato per saltare in un loop o in una funzione esterna. Puoi solo saltare a un punto all'interno dello stesso ambito.

Il secondo modulo prevede che EXPR venga valutato come un'ETICHETTA riconoscibile. In generale, dovresti essere in grado di utilizzare una normale istruzione o funzione condizionale per controllare l'esecuzione di un programma, quindi il suo utilizzo è deprecato.

La terza forma sostituisce una chiamata alla subroutine denominata per la subroutine attualmente in esecuzione. La nuova subroutine eredita la pila di argomenti e altre caratteristiche della subroutine originale; diventa impossibile per la nuova subroutine anche solo sapere che è stata chiamata con un altro nome.

Sintassi

Di seguito è riportata la semplice sintassi per questa funzione:

goto LABEL

goto EXPR

goto &NAME

Valore di ritorno

Questa funzione non restituisce alcun valore.

Esempio

Di seguito è riportato il codice di esempio che mostra il suo utilizzo di base:

#!/usr/bin/perl

$count = 0;

START:
$count = $count + 1;

if( $count > 4 ) {
   print "Exiting program\n";
} else {
   print "Count = $count, Jumping to START:\n";
   goto START;
}

Quando viene eseguito il codice sopra, produce il seguente risultato:

Count = 1, Jumping to START:
Count = 2, Jumping to START:
Count = 3, Jumping to START:
Count = 4, Jumping to START:
Exiting program