a=[1,2,3,1,2] pa = a.pack("C*") b=pa[0,2] b == "\x01\x02" # false why?
为何 返回 false
jasl@jasl-mbp:~$ irb --version irb 1.2.3 (2020-02-15) jasl@jasl-mbp:~$ irb 2.7.1 :001 > a=[1,2,3,1,2] 2.7.1 :002 > pa = a.pack("C*") 2.7.1 :003 > b=pa[0,2] 2.7.1 :004 > b == "\x01\x02" => true
可能你用了盗版 Ruby?
可能是个 BUG “\0x1\0x2" 被识别为普通的字符,没有转义
@lilijreey 是 \x01\x02, 不是 \0x1\0x2, 0 跟 x 的位置反了
\x01\x02
\0x1\0x2