perl中undef值defined函数
undef简介 ? 变量在第一次赋值前有一个特殊值undef,按照Perl来说就是: “这里什么也没有,请继续” 。如果这里的“什么也没有”是一些“数字” ,则表现为 0。如果是“字符串” ,则表现为空串。但undef 既非数字也非字符串,它是另一种标量类型。 [root@localhost~]# cat 1.pl #!/usr/bin/perl -w use strict; my $a; my $b=""; my $c=1; print "a ok/n" if ( defined $a ); print "b ok/n" if ( defined $b ); print "c ok/n" if ( defined $c ); my %hash=( ? ? ? ?'aa' => 'bejing', ? ? ? ?); if ( exists $hash{'aa'} ) { ? ? ? ?print "aa exists/n"; } else ? ? ? ?print "aa not exists/n"; 结果: [root@localhostr ~]# perl -w 1.pl b ok c ok aa exists # a 没有赋值过值,所以是undef ,b赋值为空,空也是赋值,c赋值,哈希存在aa值 defined是用来测试一个变量是否是undef的,也就是说这个变量一定有,只是不知道对这个变量赋过值没有 原文链接:http://blog.csdn.net/nomad2/article/details/6213979 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |