perl | ir a declaración

La gotodeclaración en Perl es una declaración de salto que a veces también se conoce como declaración de salto incondicional. La gotodeclaración se puede usar para saltar de cualquier lugar a cualquier lugar dentro de una función.
Sintaxis:

LABEL:
Statement 1;
Statement 2;
.
.
.
.
.
Statement n;
goto LABEL;

En la sintaxis anterior, la gotodeclaración indicará al compilador que vaya/salte inmediatamente a la declaración marcada como ETIQUETA. Aquí, la etiqueta es un identificador definido por el usuario que indica la declaración de destino. La declaración que sigue inmediatamente después de ‘etiqueta:’ es la declaración de destino.
goto
gotoLa instrucción en Perl tiene tres formas: etiqueta, expresión y subrutina.

  1. Etiqueta: Simplemente saltará a la declaración marcada con la ETIQUETA, y continuará la ejecución desde esa declaración.
  2. Expresión: en este formulario, habrá una expresión que devolverá un nombre de etiqueta después de la evaluación e ir a hará que salte a la declaración etiquetada.
  3. Subrutina: goto transferirá el compilador a la subrutina del nombre dado desde la subrutina que se está ejecutando actualmente.

Sintaxis:

goto LABEL

goto EXPRESSION

goto Subroutine_Name

gotoUsando el nombre de ETIQUETA: El nombre de ETIQUETA se usa para saltar a una declaración específica en el código y comenzará la ejecución desde esa declaración. Aunque su alcance es limitado. Solo puede funcionar dentro del alcance desde donde se llama.
Ejemplo:

# Perl program to print numbers 
# from 1 to 10 using goto statement 
  
# function to print numbers from 1 to 10 
sub printNumbers() 
{ 
    my $n = 1; 
label: 
    print "$n "; 
    $n++; 
    if ($n <= 10) 
    {
        goto label;
    }
} 
    
# Driver Code
printNumbers(); 
Producción:

1 2 3 4 5 6 7 8 9 10

gotousando Expression: Una expresión también se puede usar para dar una llamada a una etiqueta específica y pasar el control de ejecución a esa etiqueta. Esta expresión, cuando se pasa a la gotodeclaración, se evalúa para generar un nombre de etiqueta y la ejecución continúa desde esa declaración definida por ese nombre de etiqueta.
Ejemplo:

# Perl program to print numbers 
# from 1 to 10 using the goto statement 
  
# Defining two strings 
# which contain 
# label name in parts
$a = "lab";
$b = "el";
  
# function to print numbers from 1 to 10 
sub printNumbers() 
{ 
    my $n = 1; 
label: 
    print "$n "; 
    $n++; 
    if ($n <= 10) 
    {
        # Passing Expression to label name
        goto $a.$b;
    }
} 
    
# Driver Code
printNumbers(); 
Producción:

1 2 3 4 5 6 7 8 9 10

gotousando Subrutina: También se puede llamar a una subrutina con el uso de la gotodeclaración. Esta subrutina se llama desde dentro de otra subrutina o individualmente según su uso. Contiene el trabajo que se va a realizar junto a la declaración de llamada. Este método se puede usar para llamar a una función recursivamente para imprimir una serie o un rango de caracteres.
Ejemplo:

# Perl program to print numbers 
# from 1 to 10 using goto statement 
  
# function to print numbers from 1 to 10 
sub label
{
    print "$n ";
    $n++;
      
    if($n <= 10)
    {
        goto &label;
    }
}
  
# Driver Code
my $n = 1;
label(); 
Producción:

1 2 3 4 5 6 7 8 9 10

Publicación traducida automáticamente

Artículo escrito por Abhinav96 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *