我正在尝试通过一个小的Perl学习项目,该项目需要从套接字中读取4个无符号整数.我无法获得超过1个整数读取,并在挖掘后找到了解决方案.但我需要了解我做得不对(并且经历过几本Perl书籍,perldocs等等都无济于事.)
示例1:这是成功的解决方案代码(原始),假设下面的套接字连接成功:
{
local $/ = \16; # make <> read in 16 bytes with one swoop.
my @integers = unpack "IIII", <$sock>;
print "numbers: @val\n";
}
Run Code Online (Sandbox Code Playgroud)
例2:我在下面尝试过这个.如果我在解压缩之前打印输入,我只得到一个整数:
my $input;
$sock->recv($input,16,0);
my @integers = unpack("IIII", $input);
Run Code Online (Sandbox Code Playgroud)
具体问题:
任何帮助,指针等都表示赞赏.顺便说一下,"学习项目"是一个非常酷的东西.