这是我目前的代码:
sub randompass {
srand(time ^ $$);
my @passset = ('a'..'k', 'm'..'n', 'p'..'z', '2'..'9');
my $randpass = "";
for (my $i=0; $i<8; $i++) {
$randpass .= $passset[int(rand($#passset + 1))];
}
return $randpass;
}
答案 0 :(得分:4)
请勿使用srand();
,并且您将获得rand()
的预期行为
如果没有显式调用srand(),则在第一次使用rand运算符时,它将在没有参数的情况下隐式调用。但是,在某些情况下,程序可能需要调用srand。 一个用于生成可预测的结果,通常用于测试或调试。