Perl在C中解包“S *”等价物
发布时间:2020-12-16 06:19:19 所属栏目:大数据 来源:网络整理
导读:我正在理解Perl在我正在阅读的一些代码中解压缩,特别是使用S *模板. $data = "FF";print "$data - ",unpack("S*",$data),"n";# FF - 17990 C中的这个等价物是什么? 为什么? 非常感谢您的帮助 解决方法 你在C中的代码看起来(大致)像这样: const char *dat
我正在理解Perl在我正在阅读的一些代码中解压缩,特别是使用S *模板.
$data = "FF"; print "$data - ",unpack("S*",$data),"n"; # > FF - 17990 > C中的这个等价物是什么? 非常感谢您的帮助 解决方法
你在C中的代码看起来(大致)像这样:
const char *data = "FA"; unsigned short s; memcpy( &s,data,strlen(data) ); printf("%s = %dn",s); 这仅处理具有两个字符的情况,而解包(‘S *’,…)将返回与其输入对应的短按列表. 为什么?打包和解包的主要动机之一是使二进制数据与C结构更容易交换. perlpacktut是一个很好的起点. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |