我正在尝试在文件中写入从数组中取得的某些值。但我有一些错误'不能使用一个未定义的变量在...行81中的符号引用:不能使用未定义的值作为符号perl
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);
可能有人请说明我有什么错?
事情是我的代码是这一个,它工作正常。而且我没有concatanate来源,它仍然工作正常。
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";
}
但我有很多代码,做同样的事情,所以我想创造一个功能,能够减少线路的数量。