运行代码时出现以下错误:
syntax error line 5, near "use Digest::MD5
sub makeKey
"
syntax error at line 8, near "}"
syntax error at line 15, near ")
}"
Execution aborted due to compilation errors.
我的剧本:
use lib '/home/me/Desktop/pm/MD5.pm';
use Digest::MD5
sub makeKey
{
my ($strPassword, $strRndk);
$strKey = uc(md5Hash($strPassword)) + $strRndk + "Y(02.>'H}t\":E1" + md5Hash($strKey);
return $strKey;
}
sub md5Hash
{
my ($strPassword);
$strMd5 = md5_hex($strPassword);
return substr($strMd5, 16, 16) + substr($strMd5, 0, 16);
}
makeKey('test', '1A2B3C');
答案 0 :(得分:4)
使用摘要:: MDd5需要以分号结尾。
答案 1 :(得分:4)
关于你的第三个(也是最后一个?)问题:
默认情况下,“未定义的子程序& main :: md5_hex在第14行调用”
Digest::MD5
不导出md5_hex
(或其他任何内容),您必须明确告诉它应导出md5_hex
:
use Digest::MD5 qw(md5_hex);
或使用完整的Digest::MD5::md5_hex
名称。