[問題] 在do while中使用last跳出無作用
昨天測試各種無限迴圈中使用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
推
11/19 12:57, , 1F
11/19 12:57, 1F
討論串 (同標題文章)
以下文章回應了本文:
完整討論串 (本文為第 1 之 3 篇):
Perl 近期熱門文章
PTT數位生活區 即時熱門文章