这是我正在编写的程序中的一些代码,语法错误位于第 3 行。
if($header gt $word{
$wordlist{$word} = $header;
$header = $word;
return;
}
这是我正在编写的程序中的一些代码,语法错误位于第 3 行。
if($header gt $word{
$wordlist{$word} = $header;
$header = $word;
return;
}
简而言之-您在第一行缺少右括号
实际上这很有趣,因为您希望 Perl 用它的错误消息将您指向正确的位置。然而,由于运气不好,它看起来就像一个完全有效的代码的开始,只是碰巧做了一些超出你预期的事情。
Perl 实际上认为您查找一个名为的散列%word
(使用$word{...}
赋值的值作为键)。
因此,如果您这样做,这将是一个完全有效的代码:
if ($header gt $word{
$wordlist{$word} = $header # removed the ;
}) { # closed the condition
$header = $word;
return;
}
Perl 只有在到达第二行的末尾并看到;