gpt4 book ai didi

perl - 这个混淆的 Perl 代码是如何工作的?

转载 作者:行者123 更新时间:2023-12-04 08:57:30 26 4
gpt4 key购买 nike

这段代码是如何工作的?

#!/usr/bin/perl

$i=4;$|=@f=map{("!"x$i++)."K$_^\x{0e}"}
"BQI!\\","BQI\\","BQI","BQ","B","";push
@f,reverse@f[1..5];@f=map{join"",undef,
map{chr(ord()-1)}split""}@f;{;$f=shift@
f;print$f;push@f,$f;select undef,undef,
undef,.25;redo;last;exit;print or die;}

最佳答案

让我们先把这个通过 perltidy

$i = 5;
$| = @f = map { ("!" x $i++) . "9$_*\x{0e}" } ">>>E!)", ">>>E)", ">>>E", ">>>", ">>", ">", "";
push @f, reverse @f[ 1..5 ];
@f = map {
join "",
map { chr(ord() - 1) }
split //
} @f;
{
$f = shift @f;
print $f;
push @f, $f;
select undef, undef, undef, .25;
redo;
last;
exit;
print or die;
}

第一行很明显。

第二行列出一个列表 ">>>E!)", ">>>E)", ">>>E", ">>>", ">>", ">", "" , 并将它们全部分隔为等长,并附加一个星号和一个“移出”(回车后的字符)。

第三行将项目 5 到 1(按该顺序)附加到该列表中,因此它将是 ">>>E!)", ">>>E)", ">>>E", ">>>", ">>", ">", "", ">", ">>", ">>>", ">>>E" .

map 将所有字符减一,从而创建像 8===D () 这样的元素。 .

第二个循环只是每 0.25 秒在循环中打印列表中的元素。回车使它们相互覆盖,从而看到动画。最后几行永远不会到达,因此是假的。

关于perl - 这个混淆的 Perl 代码是如何工作的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2319770/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com