【发布时间】:2013-01-21 12:29:36
【问题描述】:
我试图了解从 PHP 打包/解包的工作原理。
正如我从php.net/pack看到的那样
n unsigned short (always 16 bit, big endian byte order)
我有 php
$binarydata = unpack('n', 12);
print_r($binarydata);
输出:
Array (
[1] => 12594
)
在 C++ 中我有
uint16_t swap_uint16( uint16_t val ) {
return (val << 8) | (val >> 8 );
}
cout << swap_uint16(12);
输出:3072
【问题讨论】:
-
你的 PHP 代码没有意义。您的 C++ 代码是有意义的,但我看不出它与您的 PHP 代码或您引用的
pack文档有什么关系。你有问题吗?