【发布时间】:2011-11-30 04:02:17
【问题描述】:
从这个问题:
bytearray - Perl pack/unpack and length of binary string - Stack Overflow
我了解到,下面 sn-p 中的 @unparray = unpack("d "x5, $aa); 会导致 unparray 中的字符串项 - 而不是双精度数字(如我所料)。
是否有可能从下面sn-p 中的$aa 字节串中以某种方式获得一个双精度值数组?:
$a = pack("d",255);
print length($a)."\n";
# prints 8
$aa = pack("ddddd", 255,123,0,45,123);
print length($aa)."\n";
# prints 40
@unparray = unpack("d "x5, $aa);
print scalar(@unparray)."\n";
# prints 5
print length($unparray[0])."\n"
# prints 3
printf "%d\n", $unparray[0] '
# prints 255
# one liner:
# perl -e '$a = pack("d",255); print length($a)."\n"; $aa = pack("ddddd", 255,123,0,45,123); print length($aa)."\n"; @unparray = unpack("d "x5, $aa); print scalar(@unparray)."\n"; print length($unparray[0])."\n" '
非常感谢您的任何回答,
干杯!
【问题讨论】: