Some parts of this page were machine translated.
Powered by Yandex.Translate
http://translate.yandex.com/
Il existe plusieurs façons que vous pouvez créer une boucle infinie dans Perl.
Il existe plusieurs façons que vous pouvez créer une boucle infinie dans Perl.
while
La première méthode permet de créer une boucle infinie est d'utiliser
le cycle de while
. Le cycle se poursuit jusqu'à ce que l'expression est vraie. Comme
l'expression d'écrire une simple constante, qui est la vérité et dans ce cas
le cycle sera de travailler sans cesse. Voici un exemple de code:
#!/usr/bin/perl
while (1) {
# some code
}
Si vous souhaitez arrêter ce cycle, dans le corps d'une boucle besoin d'effectuer last
. Voici un exemple:
#!/usr/bin/perl
my $i = 0;
while (1) {
print $i;
last if $i > 2;
$i++;
}
Veuillez noter que pour sortir de la boucle le mot est utilisé last
, et non return
et
pas break
.
for
Voici comment écrire une boucle infinie dans le langage de programmation Perl à l'aide de for
:
#!/usr/bin/perl
for (;;) {
# some code
}
Après for
entre parenthèses va 3 extrait de code:
Habituellement, le corps de la boucle se fait dans ce cas si le test renvoie la vérité. Mais si aucune vérification, dans ce cas particulier, il s'avère une boucle infinie.
Pour sortir de cette boucle infinie, vous devez utiliser last
:
#!/usr/bin/perl
for (my $i = 0;;$i++) {
print "$i";
last if $i > 2;
}
until
Voici une autre façon que vous pouvez créer une boucle infinie en Perl:
#!/usr/bin/perl
do {
# some code
} until(0)
Le bloc de code est exécuté jusqu'à ce que la condition dans until
est un mensonge.
Pour sortir de cette boucle infinie, aussi vous devez utiliser le mot-clé last
,
mais, pour qu'il fonctionne correctement vous devez placer tout le code d'une boucle infinie dans des accolades:
#!/usr/bin/perl
my $i = 0;
{
do {
print $i;
last if $i > 2;
$i++;
} until(0)
}
Voici un exemple dans lequel nous essayons d'utiliser last
, mais ne обрамляем code des parenthèses:
#!/usr/bin/perl
my $i = 0;
do {
print $i;
last if $i > 2;
$i++;
} until(0)
Si vous exécutez ce code, ce serait une erreur:
Can't "last" outside a loop block at script.pl line 7.
0123