1

有人可以告诉我 Perl 中的含义

unpack('@76b9', $buf);

(特别是'@76b9'部分)。这个以零为参数的函数可以返回不同于零的东西吗?

4

2 回答 2

2
@76

@空填充或截断到绝对位置,从最里面的 ()-group 开始计数

b9

b位串(每个字节内的升序位顺序,如 vec())。

例子:

unpack('@76b9', (" "x76) . chr(4) . chr(1) )   ==>  001000001
                                                    --------|
                                                        |   |
                             \004 in ascending order-----   |
                                                            |
                             LSB of \001 --------------------
于 2013-07-19T20:22:06.763 回答
2

@76表示跳到$buf.

b9表示解包一个 9 位整数字段。

请参阅perlpacktutpack以获取有关和的教程unpack

于 2013-07-19T20:18:28.983 回答