in reply to hex(unpack("H*")) help?!?!

$number = hex("0x$string");
--
<http://www.dave.org.uk>

"The first rule of Perl club is you do not talk about Perl club."
-- Chip Salzenberg

Replies are listed 'Best First'.
Re: Re: hex(unpack("H*")) help?!?!
by jettero (Monsignor) on Oct 31, 2002 at 17:09 UTC
    Nope, that converts the string in the wrong byte order. that won't work at all. Note that '$1' and '$2' were bytes from a file, not integers from a file?

      Ah. OK. Is the string always two chars long?

      $number = hex("0x". reverse $string);

      (please don't take this suggestion seriously)

      --
      <http://www.dave.org.uk>

      "The first rule of Perl club is you do not talk about Perl club."
      -- Chip Salzenberg

        I think you need to do some reading. reverse doesn't work how you think either... reverse "ab" is "ab" ... sorry.
          A reply falls below the community's threshold of quality. You may see it by logging in.
      I also checked... presuming the $string was "6801" instead of "\x68\x01" to see if it would work anyway... it does not. try it...
      perl -e '$i = hex("0x6801"); print sprintf("\%x", $i), "\n"'
      Still wrong. It should return 168, not 6801