2013-05-28 90 views
1

我寫了一個小測試腳本。傳遞給函數的Perl參數

#!/usr/bin/perl -w 

use strict; 

my $head="a b"; 

sub test 
{ 
my @arr=split//,@_; 
print $arr[0]; 
} 

test $head; 

輸出爲1,而不是我其實期待a。誰能告訴我在哪裏,我錯了

回答

8

split操作數在標量環境進行評估,並@_在標量上下文計算爲元素的數量@_1)。你想要

sub test { 
    my @arr = split//, $_[0]; 
    print $arr[0]; 
}