Dernière déclaration Perl

Lorsqu'un lastest rencontrée à l'intérieur d'une boucle, la boucle est immédiatement terminée et le contrôle du programme reprend à l'instruction suivante suivant la boucle. Vous pouvez fournir un LABEL avec la dernière instruction où LABEL est le libellé d'une boucle. UNElast L'instruction peut être utilisée dans une boucle imbriquée où elle sera applicable à la boucle la plus proche si aucun LABEL n'est spécifié.

S'il y en a continuebloc sur la boucle, il n'est pas exécuté. Vous verrez l'instruction continue dans un chapitre séparé.

Syntaxe

La syntaxe d'un last l'instruction en Perl est -

last [LABEL];

Représentation schématique

Exemple 1

#!/usr/local/bin/perl

$a = 10;
while( $a < 20 ) {
   if( $a == 15) {
      # terminate the loop.
      $a = $a + 1;
      last;
   }
   print "value of a: $a\n";
   $a = $a + 1;
}

Lorsque le code ci-dessus est exécuté, il produit le résultat suivant -

value of a: 10
value of a: 11
value of a: 12
value of a: 13
value of a: 14

Exemple 2

Prenons un exemple où nous allons utiliser un LABEL avec l'instruction suivante -

#!/usr/local/bin/perl

$a = 0;
OUTER: while( $a < 4 ) {
   $b = 0;
   print "value of a: $a\n";
   INNER:while ( $b < 4) {
      if( $a == 2) {
         # terminate outer loop
         last OUTER;
      }
      $b = $b + 1;
      print "Value of b : $b\n";
   }
   print "\n";
   $a = $a + 1;
}

Lorsque le code ci-dessus est exécuté, il produit le résultat suivant -

value of a : 0
Value of b : 1
Value of b : 2
Value of b : 3
Value of b : 4

value of a : 1
Value of b : 1
Value of b : 2
Value of b : 3
Value of b : 4

value of a : 2