我有一个从二进制文件中读取的四字节字符串,它应该表示一个整数。 我如何避免整数?
示例:
my $s = '\xa8e2~';
my $i = stoi($s);
printf "%X", $i; #gives "0x7e3265a8"
C中的解决方案很简单:
fread(&i,4,1,fp);
答案 0 :(得分:6)
$i = unpack("s", $s)
可能有效,但它取决于有符号/无符号和字节顺序,因此您可能会在此处结束:http://perldoc.perl.org/perlpacktut.html#Integers
答案 1 :(得分:3)