perl中的函数参数

perl中的函数参数传入后是存在存在数组@_中的而不是存在$_中,就算有一个元素也是如此。。。。


注意比较以下两个程序的区别,便可理解参数的含义:

1.

#!/usr/bin/perl
use 5.010;
sub greet{
state $last;
my $name=shift;
if(defined $last)
{
print "$last is here!!!\n";
}
else
{
print "no one is here...\n";
}
$last=$name;
}

greet('jim');
greet('lucy');


2.
#!/usr/bin/perl
use 5.010;
sub greet{
state $last;
my $name=$_;
if(defined $last)
{
print "$last is here!!!\n";
}
else
{
print "no one is here...\n";
}
$last=$name;
}

greet('jim');
greet('lucy');

注意两者结果的区别。。。严格意义上讲第二个是错的。。。毫无意义的。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值