我运行了以下代码
$a=pack("H1H3", "1","abc");
$b=unpack("B*", $a);
print "Got $b n";
C:Usersa0875499Documents>perl abc.pl
Got 000100001010101111000000
输出在我看来不正确。还有一个不应该出现的"0000"。我正在寻找输出为"0001101010111100"。你知道我错过了什么吗?
pack()
的'H'
格式汇编字节,因此如果您提供奇数个值,它将用空nybble填充最后一个字节。
如果我没理解错的话,你可以这样做:
$a = pack("H4", "1abc");
或
$a = pack("H*", "1abc");