標(biāo)題: 請(qǐng)教一段簡(jiǎn)單代碼中的錯(cuò)誤問(wèn)題 [打印本頁(yè)] 作者: sdupoplar 時(shí)間: 2003-06-30 20:47 標(biāo)題: 請(qǐng)教一段簡(jiǎn)單代碼中的錯(cuò)誤問(wèn)題 use strict;
use warnings;
my @date_array=();
my $line;
while($line=<DATA>;)
{
chomp($line);
my @data_parts=split /\//,$line;
if($#data_parts!=2)
{
print STDERR "Bad input line $line";
}
my %data_hash=
(
month=>;$data_parts[0],
day=>;$data_parts[1],
year=>;$data_parts[2]
);
push(@date_array,{%date_hash}); # 21行錯(cuò)誤行 :lol:
}
my %year_hash;
foreach my $cur_date(@date_array)
{
$year_hash{$cur_date->;{year}}=1;
}
foreach my $cur_year (sort keys %year_hash)
{
print "$cur_year\n"
}
__DATA__
02/25/01
05/09/02
11/6/03
9/29/01
本人剛開(kāi)始學(xué) perl 請(qǐng)大家多多指教
編譯環(huán)境:win2000 perl v5.8.0
錯(cuò)誤信息:
Global symbol "%date_hash" requires explicit package name at date.pl line 21.
Execution of date.pl aborted due to compilation errors.作者: ocean2000 時(shí)間: 2003-06-30 23:56 標(biāo)題: 請(qǐng)教一段簡(jiǎn)單代碼中的錯(cuò)誤問(wèn)題 你的程序嗎?問(wèn)一下
foreach my $cur_date(@date_array)
{
$year_hash{$cur_date->;{year}}=1;
}
$cur_date->;{year} 到底引用的是什么呢?
不好意思我學(xué)藝不精。
光看21行,不用大括號(hào),不行嗎?還有如果push不行,你為什么不嘗試直接負(fù)值呢?