Updated April 5, 2023
Introduction to Perl undef function
Undef function is used to make the value of the variable undefined in Perl. If we want to make the value of the variable undefined, then we can use the undef function in Perl; this function can be used with a variable, has, list, etc. undef function does not delete the value, but rather it will clear the variable value and make it undefined. So if we want to delete any value, then we have to use the delete function for this; after using undef for any variable, it will make it blank or reset it. In the coming section, we will discuss more this function in detail for better understanding.
Syntax
As we discussed already, this function is used to make the value of the list, scalar variable, hash as undefined. It will reset them. Let’s see its syntax for a better understanding of how to use this while programming see below;
1) undef EXPR: in this, we can provide the expression it can anything a variable or list or hash as well.
2) undef: This function can be used without the parentheses as well.
3) undef(): If we want, we can have parentheses as well.
Immediately after the undef keyword, we can write our variable name to make it undefined in Perl. In the coming section, we will see some more sample examples for beginners or better understanding.
How undef function works in Perl?
We know that we undef function is used with a list, hash, or scalar variable to make their value undefined. If you want to make the value undefined or want to reset the value of the variable after some operation, then we can use the undef function in Perl. After making it undefined we can check it for NULL or NIL. Sometimes we may require to reinitialize the variable while programming so we can use the undef function; we can use this function with or without the parentheses in Perl. Immediately after this function, we can provide our variable, which we want to make as undefined. Let’s discuss the method signature with the return type see below;
Method Signature:
1) undef your_variable: This function can be used without parentheses; after this, we can assign the variable name. this will reset the value of the variable and make it undefined.
2) return type: This function returns the undefined as the value.
Let’s see one sample example to see how we can use this function in Perl; below is the sample example for beginners to understand its working in detail see below;
e.g. :
print "Demo for undef in perl\n";
$myvariable = 50;
print "value before is :: ${myvariable}\n";
undef $myvariable;
print "value after is :: ${myvariable}\n";
In the above lines of code, we are using the undef function. First, we have created one variable named ‘myvariable’ and assign it value as 50. But after some operations, we are using the undef function to reset its value, so we call this function and mention the variable name as the input parameter here. Once the value from the function is calculated, it will make the variable ‘myvariable’ as undefined, and it will be blank when we try to print it. Before calling the undef function, the value of the variable is ’50’, but after calling the undef function on this variable, we have an undefined value or blank as the value in that variable.
Points to remember while using the undef function in Perl :
1) This function does not delete the variable from the memory t just makes it blank.
2) If we want to delete the variable, we have to use the delete function in Perl.
3) This function is very easy to use; after the function, we can simply mention the variable name. This is very easy to read and understand.
Examples
Here are the following examples mention below
Example #1
In this example, we are using the undef function to make the value of the variable undefined. We have created several variables to test it. First, it will print the values; after that, it will become vacant all the values from the variable.
Code:
print "Demo for undef in perl\n";
$myvariable1 = 300;
$myvariable2 = 500;
$myvariable3 = 600;
$myvariable4 = 700;
$myvariable5 = 800;
print "value inside all the variable :::\n";
print "value before is :: ${myvariable1}\n";
print "value before is :: ${myvariable2}\n";
print "value before is :: ${myvariable3}\n";
print "value before is :: ${myvariable4}\n";
print "value before is :: ${myvariable5}\n";
undef $myvariable1;
undef $myvariable2;
undef $myvariable3;
undef $myvariable4;
undef $myvariable5;
print "value after is :: ${myvariable1}\n";
print "value after is :: ${myvariable2}\n";
print "value after is :: ${myvariable3}\n";
print "value after is :: ${myvariable4}\n";
print "value after is :: ${myvariable5}\n";
Output:
Example #2
In this example, we are trying to use undef with the string variable in Perl. In this example also we have created so many variables to make it easier to understand better. After that, we are calling the undef function to make the blank.
Code:
print "Demo for undef in perl\n";
$myvariable1 = "hello";
$myvariable2 = "sampleexmpale";
$myvariable3 = "to show";
$myvariable4 = "undef";
$myvariable5 = "working in perl";
print "value inside all the variable :::\n";
print "value before is :: ${myvariable1}\n";
print "value before is :: ${myvariable2}\n";
print "value before is :: ${myvariable3}\n";
print "value before is :: ${myvariable4}\n";
print "value before is :: ${myvariable5}\n";
undef $myvariable1;
undef $myvariable2;
undef $myvariable3;
undef $myvariable4;
undef $myvariable5;
print "value after is :: ${myvariable1}\n";
print "value after is :: ${myvariable2}\n";
print "value after is :: ${myvariable3}\n";
print "value after is :: ${myvariable4}\n";
print "value after is :: ${myvariable5}\n";
Output:
Conclusion
By using the undef function, we can make the value of the variable blank or undefined; it basically stands for undefined. This function does not delete the variable; rather, it makes it blank. This function is very easy to use and understand. We can apply checks on variables after resetting them. Also, it is an in-built function of Perl, and we do not require to include any library from the marketplace.
Recommended Articles
This is a guide to Perl undef. Here we discuss How the undef function works in Perl and Examples along with the codes and outputs. You may also look at the following articles to learn more –