【发布时间】:2019-11-16 13:05:49
【问题描述】:
我正在学习perl,想调用一个函数,并传递2个参数给它, 这是代码:
use strict;
use warnins;
sub test
{
my ($item) = @_;
print "$item\n";
}
test("hello world");
结果是:你好,世界
如果我把代码改成这样:
my $item = @_;
那么结果是:1
差异的原因是什么?有点迷茫, 我明白@_是调用它时传递给函数test的参数,它是字符串“hello world”,那么为什么将@_分配给$item后,结果是1,似乎是数组@_的长度,但是($ item) 是参数本身,
【问题讨论】: