perl에서 해시 배열을 생성하려고하는데 인쇄 된 유일한 것이 입력 된 마지막 해쉬이므로 인쇄하는 데 문제가 있습니다.배열에 해시 추가하기
해시 테이블을 배열에 푸시하는 방법에 문제가 있습니까? 또한 배열 (해시 테이블)의 내용을 제대로 인쇄하려면 어떻게해야합니까?
print "\n===========SUBJECTS===========\n";
my $exit = "n";
until ($exit eq "y") { #loops until user enters 'y'
print "Course Number: ";
my $cNum = <STDIN>;
chomp($cNum);
print "Course Credit: ";
my $cCred = <STDIN>;
print "Grade: ";
my $cGrade = <STDIN>;
%subHash = (
"courseNumber" => $cNum,
"courseCredit" => $cCred,
"courseGrade" => $cGrade,
);
push @subList, \%subHash;
$subCount += 1;
print "\nFinished adding subjects?\n[y/n]\nCHOICE: "; #asks for subject input termination
$exit = <STDIN>;
chomp($exit);
print "\n==============================\n";
}
어떻게'@ subList'를 인쇄하려고합니까? – Slade
'my % subHash = ...'때마다 새로운 subHash를 선언하십시오. –