perl | undef y la función definida

undef se utiliza para aquellas variables que no tienen ningún valor asignado. Se puede comparar con NULL (en Java, PHP, etc.) y Nil (en Ruby). Entonces, básicamente, cuando el programador declara una variable escalar y no le asigna un valor, se supone que la variable contiene un valor no definido. En Perl, si el valor inicial de una variable no está definido, no imprimirá nada.
Ejemplo: 
 

Perl

# Perl program for undef variable
# variable which declared without
# initial value
 
# variable x without initial value
my $x;
 
# printing its value
print "The value of x is = ${x}";

Producción: 
 

The value of x is = 

Función undef(): undef se utiliza para restablecer el valor de cualquier variable. Se puede usar con o sin paréntesis. Significa que los paréntesis son opcionales al usar esta función.
 

  • Ejemplo:
     

Perl

# Perl program to illustrate
# the undef() function
 
# a variable with initial value 10
$k = 10;
 
# displaying its initial value
print "The value of variable k is ${k}\n";
 
 
# undef the variable
undef $k;
 
# value after the undef function
print "The value of variable k is ${x}\n";
 
# a variable with initial value 20
$m = 20;
 
# displaying its initial value
print "The value of variable m is ${m}\n";
 
# undef the variable
# you can also use
# $m = undef;
$m = undef();
 
# value after the undef function
print "The value of variable m is ${m}\n";
  • Producción: 
     
The value of variable k is 10
The value of variable k is 
The value of variable m is 20
The value of variable m is 

Función definida(): esta función se utiliza para verificar si se asigna un valor a la variable o no. Devolverá True si el valor se asigna a la variable; de ​​lo contrario, devolverá false. 
 

  • Sintaxis: 
     
defined $variable_name
  • Ejemplo:
     

Perl

# Perl program to illustrate
# the defined() function.
 
# a variable assigned value 15
$k = 15;
 
# To check if variable is defined or not
if (defined $k)
{
     print "k is defined\n";
}
else
{
    print "k is not defined\n";
}
 
 
# undef the variable
$k = undef;
 
# To check if the variable is defined or not
if (defined $k)
{
    print "k is defined\n";
}
else
{
    print "k is not defined\n";
}
  • Producción: 
     
k is defined
k is not defined

Nota: aunque las variables indefinidas no tienen un valor definido, pueden tomar un valor nulo durante la operación. Por ejemplo, si el usuario agrega dos variables x e y en las que x es 5 e y no está definida, el resultado seguirá siendo 5 porque y tomará el valor 0. De manera similar, si el usuario concatena dos strings strx y stry con strx como valor “GGF” y stry no está definido, el resultado sería “GFG”, ya que stry toma el valor de una string en blanco “”.
 

  • Ejemplo: 
     

Perl

# Perl program to demonstrate behaviour
# of undef variables, during operation
# like arithmetic, concatenation etc.
 
# first variable assigned with value
$x = 125;
 
# second variable with no value
my $y;
 
# arithmetic operation
$z = $x + $y;
 
# displaying sum
print "The sum of x and y is ${z}\n";
 
# declaring strx and assigned a value to it
$strx = "GFG";
 
# declaring stry without assigned value
my $stry;
 
# string concatenation
$strz = $strx.$stry;
 
# after concatenation
print "After concatenation of strx and stry  ${strz}\n";
  • Producción: 
     
The sum of x and y is 125
After concatenation of strx and stry  GFG

Publicación traducida automáticamente

Artículo escrito por SrijaPandey 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 *