c/c++语言开发共享没有与GCC的内存对齐

我正在处理一些分组数据。 我创建了用于保存数据包数据的结构。 这些结构是由python为特定的网络协议生成的。

问题在于,由于编译器对齐结构这一事实,当我通过网络协议发送数据时,消息最终会比我想要的更长。 这会导致其他设备无法识别该命令。

有没有人知道可以解决这个问题,这样我的打包器的大小应该是结构应该的大小,还是有办法可以关闭内存对齐?

    在GCC中,您可以使用__attribute__((packed)) 。 这些天GCC也支持#pragma pack

    例子:

      以上就是c/c++开发分享没有与GCC的内存对齐相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/c-cdevelopment/544767.html

      (0)
      上一篇 2021年1月9日
      下一篇 2021年1月9日

      精彩推荐