看板 Perl 關於我們 聯絡資訊
昨天測試各種無限迴圈中使用last跳出的情況 意外發現若在do while 中使用last跳出會出現錯誤訊息 有人知道是啥原因造成的嘛? 測資 --- #!/usr/bin/perl for(;;) { print "Hello\n"; last; } #成功跳出 --- #!/usr/bin/perl while(1) { print "Hello\n"; last; } #成功跳出 --- #!/usr/bin/perl do { print "Hello\n"; last; } while(1) #失敗 # error msg: Can't "last" outside a loop block --- #!/usr/bin/perl do { print "Hello\n"; last; } for(0..50) #成功但不是無窮迴圈 --- #!/usr/bin/perl do { print "Hello\n"; last; } for(;;) #沒這樣寫法 希望有人能解答一下這問題~ 或是提供一下官方手冊中是否有提到 last 在 do while迴圈內會失效~ 感謝囉~ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 59.120.53.115
cutecpu:想知道 +1 11/19 12:57