कैसे बनाने के लिए एक अनंत लूप में पर्ल

वहाँ रहे हैं कई तरीके आप कर सकते हैं बनाने के लिए एक अनंत लूप में पर्ल.

उपयोग while

पहली विधि के माध्यम से जो आप कर सकते हैं बनाने के लिए एक अनंत लूप है का उपयोग करने के लिए चक्र while. इस पाश मार डाला है जब तक अभिव्यक्ति सच है । के रूप में अभिव्यक्ति लिखने के लिए एक सरल निरंतर है, जो सच में इस मामले में पाश चलेंगे असीम. यहाँ है एक उदाहरण कोड:

#!/usr/bin/perl

while (1) {
    # some code
}

अगर आप की जरूरत है को पूरा करने के लिए इस चक्र है, तो पाश में आप की जरूरत प्रदर्शन करने के लिए last. यहाँ एक उदाहरण है:

▶ Run
#!/usr/bin/perl

my $i = 0;
while (1) {
    print $i;
    last if $i > 2;
    $i++;
}

ध्यान दें कि करने के लिए बाहर निकलें पाश कीवर्ड प्रयोग किया जाता है last, नहीं returnऔर नहीं break.

उपयोग for

यहाँ है कैसे लिखने के लिए एक अनंत लूप पर पर्ल प्रोग्रामिंग भाषा का उपयोग सी for:

#!/usr/bin/perl

for (;;) {
    # some code
}

के बाद for 3 कोष्ठक में कोड स्निपेट:

  • प्रारंभिक मूल्य
  • की जाँच करें
  • परिवर्तन

आम तौर पर पाश के शरीर का प्रदर्शन किया जाता है, तो परीक्षण सच रिटर्न । लेकिन यदि चेक गुम है, इस विशेष मामले में, यह अनंत लूप.

बाहर निकलने के लिए इस अनंत लूप आप की जरूरत है का उपयोग करने के लिए last:

▶ Run
#!/usr/bin/perl

for (my $i = 0;;$i++) {
    print "$i";
    last if $i > 2;
}

उपयोग until

यहाँ एक और तरीका है कैसे आप कर सकते हैं बनाने के लिए एक अनंत लूप में पर्ल:

#!/usr/bin/perl

do {
    # some code
} until(0)

कोड ब्लॉक निष्पादित करता है जब तक हालत में until है एक झूठ है.

आदेश में प्राप्त करने के लिए बाहर के इस अंतहीन चक्र, भी, की जरूरत करने के लिए कीवर्ड का उपयोग करें last, लेकिन यह काम करने के लिए सही ढंग से आप की जरूरत है जगह के लिए सभी कोड एक अनंत लूप में ब्रेसिज़:

▶ Run
#!/usr/bin/perl

my $i = 0;

{
    do {
        print $i;
        last if $i > 2;
        $i++;
    } until(0)
}

यहाँ एक उदाहरण है, जहां हम कर रहे हैं की कोशिश कर रहा का उपयोग करने के लिए last, लेकिन नहीं संलग्न कोड कोष्ठक:

▶ Run
#!/usr/bin/perl

my $i = 0;

do {
    print $i;
    last if $i > 2;
    $i++;
} until(0)

यदि आप इस कोड को चलाने के लिए, यह त्रुटि होगा:

Can't "last" outside a loop block at script.pl line 7.
0123

संबंधित विषयों

अन्य लेख