use strict;
my $abc='abcdef';
print "is defined:\n";
undef $abc;
is_undef($abc);
print "is '':\n";
$abc='';
is_undef($abc);
sub is_undef{
my $abc=shift;
print "方式1:";
if($abc){
print "is defined\n";
}else{
print "is undefined\n";
}
print "方式2:";
if(defined $abc){
print "is defined\n";
}else{
print "is undefined\n";
}
print "方式3:";
if($abc eq ''){
print "is undefined\n";
}else{
print "is defined\n";
}
print "\n";
my $abc='abcdef';
print "is defined:\n";
is_undef($abc);
print "is undefined:\n";undef $abc;
is_undef($abc);
print "is '':\n";
$abc='';
is_undef($abc);
sub is_undef{
my $abc=shift;
print "方式1:";
if($abc){
print "is defined\n";
}else{
print "is undefined\n";
}
print "方式2:";
if(defined $abc){
print "is defined\n";
}else{
print "is undefined\n";
}
print "方式3:";
if($abc eq ''){
print "is undefined\n";
}else{
print "is defined\n";
}
print "\n";
}
输出:
is defined:
方式1:is defined
方式2:is defined
方式3:is defined
is undefined:
方式1:is undefined
方式2:is undefined
方式3:is undefined
is '':
方式1:is undefined
方式2:is defined
方式3:is undefined