jjzjj

c++ - 2 成员结构是否可以安全地替代位压缩 int?

我有一些现有的C++代码可以通过网络发送和接收uint32_t数组。由于我的协议(protocol)发生了变化,我想用一对两个uint16_t替换这个数组中的每个条目,如果可能的话,我想这样做而不改变我发送的位数网络。将两个uint16_t值组合成单个32位宽值的一种明显方法是将低级位打包到uint32_t中,并保持数组定义不变.所以发件人的代码看起来像这样:uint32_titems[ARR_SIZE];for(std::size_ti=0;i(static_cast(field2)(field1));}接收方的代码如下所示://receiveitemsfor(std::size_t