配列から取得した値をファイルに書き込もうとしています。しかし、81行目で「未定義の変数をシンボル参照として使用できません」というエラーが発生しています。
foreach $k (sort keys %{$value2}){
print $value4 $k." = ".%{$value2{$k}}. $value3;
sub printit{
$value1 = $_[0];#"ipadress" is a string
$value2 = $_[1];#%hash2
$value3 = $_[3];#"paquet" is a string
$value4 = $_[4];#SOURCE is the file name
foreach $k (sort keys %{$value2}){
print $value4 $k." = ".%{$value2{$k}}. $value3;
if (%{$value2{$k}} >= 2) { print $value4 "s";}
print $value4 "\n";
}
}
printit('ipadress', \%hash2, ' paquet'. SOURCE );
誰かが私に何が悪いのか教えてもらえますか?
私のコードはこれであり、正常に動作します。そして、私は SOURCE を連結しませんでしたが、まだ正常に動作しています。
print SOURCE "Ipadress #2\n\n";
foreach $k (sort keys %hash2){
print SOURCE $k." = ".$hash2{$k}." paquet";
if ($hash2{$k} >= 2) { print SOURCE "s";}
print SOURCE "\n";
}
しかし、同じことを行うコードがたくさんあるので、行数を減らすことができる関数を作成したかったのです。