【发布时间】:2016-11-27 18:25:22
【问题描述】:
我有 4 个字节:
buffer_RX[3]= \x70;
buffer_RX[4]= \xb4;
buffer_RX[5]= \xc5;
buffer_RX[6]= \x5a;
我想连接它们以获得这样的表示 0x70b4c55a:
我已经这样做了plaintext[1]= (rx_buffer[3]<<8)|rx_buffer[4];
这是我得到的结果:70b4
plaintext[1]= (rx_buffer[3]<<8)|(rx_buffer[4]<<8)|(rx_buffer[5]<<8)|rx_buffer[6]
它不起作用。 请我需要帮助。
【问题讨论】:
-
将每个“8”分别更改为“24”、“16”和“8”。
-
移动它们更多。您将三个值 ORRed 到同一个地方。而
plaintext[1]需要是 32 位无符号值。 -
不清楚你所说的“有这样的代表”是什么意思。您尝试编写的代码会产生 value 0x70b4c55a;其表示方式取决于您的平台。
-
是的,我需要得到 0x70b4c55a 的结果。
标签: c