В Perl, как я могу преобразовать двоичную строку в целое число? - PullRequest
4 голосов
/ 16 декабря 2010

У меня есть четырехбайтовая строка, считанная из двоичного файла, которая должна представлять целое число.Как извлечь целое число?

Пример:

my $s = '\xa8e2~';
my $i = stoi($s);
printf "%X", $i;  #gives "0x7e3265a8"

Решение в C просто:

fread(&i,4,1,fp);

Ответы [ 2 ]

6 голосов
/ 16 декабря 2010

$i = unpack("s", $s) может работать, но это зависит от подписанного / неподписанного и порядка байтов, так что вы, вероятно, окажетесь здесь: http://perldoc.perl.org/perlpacktut.html#Integers

3 голосов
/ 16 декабря 2010

Посмотрите на функцию unpack

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...