关于perl中的函数pack和unpack
小弟初学perl,请教高手关于pack和unpack的问题
这两个函数是不是可以理解为加密和解密
pack(TEMPLATE,EXPR) 把EXPR的内容按照TEMPLATE的格式进行加密
unpack(TEMPLATE,EXPR) 把EXPR的内容按照TEMPLATE的格式进行解密
但是我个人做了一个实验
#!/usr/bin/perl
$a=pack("H2",30);
print "[" . $a . "]";
print "[" . unpack("i",$a) . "]";
返回的结果确实
[0][]
为什么我无法恢复到以前的30那个值啊?
pack首先会把30转换为一个H2的数值,然后unpack会把$a按照i解压出来。但是如果要完成这个步骤,需要知道的是30是被pack当作什么类型的数值才能在unpack的TEMPLATE中写入相应的格式值吧。 是不是不应该是i。请高手执教一二,谢谢!