Ruby pack 方法

hiveer · September 02, 2014 · Last by hiveer replied at September 02, 2014 · 3134 hits
[1000001].pack('C')
=> "A"

[01000001].pack('C')
=> "\x01"

[0b01000001].pack('C')
=> "A"

为什么会是这样的结果?

自己顶一个!求各种神回复

  1. 1000001(10 进制) => 0xF4241; 0xF4241 转换到字节为:0x41; 0x41 => “A”
  2. 01000001(8 进制) => 0x40001; 0x40001 转换到字节为:0x01; 0x01 =>“\x01”
  3. 0b01000001(2 进制) => 0x41; 0x41 => “A”

@skandhas 言简意赅!赞

You need to Sign in before reply, if you don't have an account, please Sign up first.