作者ppkliu (ppkliu)
看板perl
标题[问题] 请问传array到sub的问题
时间Thu Jun 29 17:14:49 2006
我写了如下的程式,想将一个array传到sub当中
可是一直出现这样的error message
Can't coerce array into hash at XX.pl at line 49
sub Findfun #find call function in proc
{
my $i; #array index
my $gotthis; #got 'call' in this proc
my $inproc; #got procedure name
my ($array_ref,$Fname1) = @_; #pass array reference
$gotthis=0;
$inproc=0;
foreach (@$array_ref)
#@CRT2ASM)
{
#这样不是等同使用 $array[$i]
if($array_ref->{$i} =~ /$Fname1.*proc.*near/s) #->{$i}
{$gotthis++; $inproc++;
print "In CRT2.ASM \n";
print "$i $CRT2ASM[$i]\n";
} #Fname proc near
elsif(($inproc==1)&&($array_ref->{$i} =~ /.*call/))
{print "$i $CRT2ASM[$i]\n"; }
elsif($array_ref->{$i} =~ /$Fname1.*endp/s)
{$inproc=0;print "$i $CRT2ASM[$i]\n";} #Fname endp
$i++;
}
}
&Findfun(\@CRT2ASM,$Fname);
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.66.19.129
1F:推 tony0924:改用 $array_ref->[$i] 试试看,[] 和 {} 差很多 06/30 00:06