获取到一个四字节的二进制字节流 例如
unsigned char bytes【4】
bytes【0】= 8;//00001000
bytes【1】= 143;//10001111
bytes【2】= 14;//00001110
bytes【3】= 106;//01101010
调试过程中看到的值分别 为 8、143、14、106 实际上应该为二进制形式
请问如何解析这个字节流可以获得 00001000 10001111 00001110 01101010 (0x088F0ECA)的值?正确的值应该是143593066
使用
long bytesnumber;
memcpy(&bytesnumber,bytes, sizeof(bytesnumber));得到的却是是另外一个不正确的值.
请各位不吝赐教啊,十分感谢。
c++ 字节流?解析 二进制
------解决方案--------------------------------------------------------
uint u = 8 * 16777216 + 143 * 65536 + 14 * 256 + 106;
------解决方案--------------------------------------------------------
晕!你弄反了,倒过来
bytes[0]= 106;//00001000
bytes[1]= 14;//10001111
bytes[2]= 143;//00001110
bytes[3]=8 ;//01101010
------解决方案--------------------------------------------------------
没有学过移位运算吗?
没听说windows.h提供的宏运算吗?