2.11. The defined FunctionOne operator that can return undef is the line-input operator,<STDIN>. Normally,it returns a line of text. But if there is no more input,such as at end-of-file,it will return undef to signal this.[*] To tell if a value is undef and not the empty string,use the defined function,which returns false for undef and true for everything else:
$madonna = <STDIN>; if ( defined($madonna) ) { print "The input was $madonna"; } else { print "No input available!/n"; } If you'd like to make your own undef values,you can use the obscurely named undef operator: $madonna = undef; # As if it had never been touched |