goto Perl
Perl ha tre forme di Goto: ottenuto LABLE, goto ESPR, e goto & NOME:
No. | tipo goto |
---|---|
1 | goto ETICHETTA Trova la dichiarazione ETICHETTA etichettata e ri-eseguita da lì. |
2 | goto ESPRESSIONE goto ESPR forma goto LABEL è la forma generale. Sembrava l'ora di espressione genera un nome di tag, e saltate per il marchio da eseguire. |
3 | goto & NOME Si tratta di un processo figlio in esecuzione con una chiamata a un nome sotto-processi. |
grammatica
La sintassi è la seguente:
goto LABEL 或 goto EXPR 或 goto &NAME
diagramma di flusso
Esempi
I seguenti due esempi nella variabile $ a è 15 fuori l'uscita.
Il seguente è un esempio di avanzamento comunemente utilizzati:
#/usr/bin/perl $a = 10; LOOP:do { if( $a == 15){ # 跳过迭代 $a = $a + 1; # 使用 goto LABEL 形式 goto LOOP; } print "a = $a\n"; $a = $a + 1; }while( $a < 20 );
Il programma precedente, l'uscita è:
a = 10 a = 11 a = 12 a = 13 a = 14 a = 16 a = 17 a = 18 a = 19
L'esempio seguente utilizza modulo ESPR goto. Abbiamo usato due stringhe e utilizzare un punto (.) Per il collegamento.
$a = 10; $str1 = "LO"; $str2 = "OP"; LOOP:do { if( $a == 15){ # 跳过迭代 $a = $a + 1; # 使用 goto EXPR 形式 goto $str1.$str2; # 类似 goto LOOP } print "a = $a\n"; $a = $a + 1; }while( $a < 20 );
Il programma precedente, l'uscita è:
a = 10 a = 11 a = 12 a = 13 a = 14 a = 16 a = 17 a = 18 a = 19