Perl goto 語句

Perl 迴圈 Perl 迴圈

Perl 有三種 goto 形式:got LABLE,goto EXPR,和 goto &NAME:

序號goto 類型
1goto LABEL

找出標記為 LABEL 的語句並且從那裏重新執行。

2goto EXPR

goto EXPR 形式只是 goto LABEL 的一般形式。它期待運算式生成一個標記名稱,並跳到該標記處執行。

3goto &NAME

它把正 在運行著的子進程替換為一個已命名子進程的調用。

語法

語法格式如下所示:

goto LABEL

或


goto EXPR

或


goto &NAME

流程圖

實例

以下兩個實例在變數 $a 為 15 時跳出輸出。

以下是一個常用的 goto 實例:

實例

#/usr/bin/perl $a = 10; LOOP:do { if( $a == 15){ # 跳過迭代 $a = $a + 1; # 使用 goto LABEL 形式 print "跳出輸出 \n"; goto LOOP; print "這一句不會被執行 \n"; } print "a = $a\n"; $a = $a + 1; }while( $a < 20 );

執行以上程式,輸出結果為:

a = 10
a = 11
a = 12
a = 13
a = 14
跳出輸出
a = 16
a = 17
a = 18
a = 19

以下實例使用了 goto EXPR形式。我們使用了兩個字串,並使用點號 (.) 來鏈接。

實例

$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 );

執行以上程式,輸出結果為:

a = 10
a = 11
a = 12
a = 13
a = 14
a = 16
a = 17
a = 18
a = 19

Perl 迴圈 Perl 迴圈