$var = pack "C2", 0x20, 0x30;
似乎工作得很好,但现在我如何解决数组的元素?对元素进行更改?如果可能的话。打包/解包语义不是很友好。
目前,我正在使用substr($var, $index, 1, substr($var, $index, 1) + 10)
将10添加到元素中。
对于初始化器,如果我需要一个100字节的0x20数组,那么最好的方法是什么? $var = "\x20" x 100
有效,这是“正确的”方式吗?
答案 0 :(得分:8)
两个问题,两个答案:
Q值。似乎工作得很好,但现在我如何解决数组的元素?
一个。 vec()是你的朋友:
vec($var, $index, 8) += 10;
会做你想做的事。
Q值。对于初始化器,如果我需要一个100字节的0x20数组,那么最好的方法是什么? $ var =“\ x20”x 100有效,这是'正确'的方式吗?
一个。我的书中没问题。
答案 1 :(得分:2)
这是否符合您的需求? Tie::Array::Pack