Perl stwierdzenie goto
Perl posiada trzy formy Akcja: label, dostał goto WYRAŻ i goto & Nazwa:
Nie. | Typ goto |
---|---|
1 | goto ETYKIETA Znajdź znakowanego oświadczenie etykiecie i ponownie wykonywane stamtąd. |
2 | goto WYRAŻ Postać goto WYRAŻ goto LABEL jest powszechną formą. Oczekiwała na wyrażenie generuje nazwę znacznika, a skok do kreski wykonać. |
3 | goto & NAZWA To jest uruchomiony proces potomny z wezwaniem do nazwanego podprocesów. |
gramatyka
Składnia jest następująca:
goto LABEL 或 goto EXPR 或 goto &NAME
schemat blokowy
Przykłady
Poniższe dwa przykłady w zmiennej $ a jest 15 na wyjściu.
Poniżej przedstawiono przykłady powszechnie stosowane goto:
#/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 );
Powyższy program, wyjście jest:
a = 10 a = 11 a = 12 a = 13 a = 14 a = 16 a = 17 a = 18 a = 19
Poniższy przykład wykorzystuje goto formę wyr. Użyliśmy dwa ciągi i użyć kropki (.) Do łącza.
$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 );
Powyższy program, wyjście jest:
a = 10 a = 11 a = 12 a = 13 a = 14 a = 16 a = 17 a = 18 a = 19