如何在perl中创建和使用字节数组?

时间:2009-07-02 17:27:17

标签: perl arrays

$var = pack "C2", 0x20, 0x30;

似乎工作得很好,但现在我如何解决数组的元​​素?对元素进行更改?如果可能的话。打包/解包语义不是很友好。

目前,我正在使用substr($var, $index, 1, substr($var, $index, 1) + 10)将10添加到元素中。

对于初始化器,如果我需要一个100字节的0x20数组,那么最好的方法是什么? $var = "\x20" x 100有效,这是“正确的”方式吗?

2 个答案:

答案 0 :(得分:8)

两个问题,两个答案:

Q值。似乎工作得很好,但现在我如何解决数组的元​​素?

一个。 vec()是你的朋友:

vec($var, $index, 8) += 10;

会做你想做的事。

Q值。对于初始化器,如果我需要一个100字节的0x20数组,那么最好的方法是什么? $ var =“\ x20”x 100有效,这是'正确'的方式吗?

一个。我的书中没问题。

答案 1 :(得分:2)

这是否符合您的需求? Tie::Array::Pack

相关问题