立即注册 登录
返回首页

qinshuai的个人空间

日志

结构体对齐 __packed

已有 226 次阅读2020-1-17 10:48

哎,昨天被结构体对齐 给坑了。
定义了一个几百个字节的大结构体,之前和同事通讯传输数据时都是正常的,最近看结构体结构不是很好看,
就把里面的一个量的位置给移了移,后来再和同事测试,发现移动的量读出来的数据是往后排了一个字节位置。
然后就很苦恼,怀疑是结构体大小、地址数错了?赋值时赋错了?同事的程序有问题?数了几遍结构体内容,感觉太费事,
费眼、费时间。没辙了,开科欧调试,打开查看结构体在内存中的内容,数了几下发现了原因,之前移动的那个量前面
多了一个字节,应该是编译器自动加上的。在那里仔细看了下没发现还真是结构体的数据排列有问题。想想得重新排列地址表,心烦。
后来给yao哥说了下,yao哥说在结构体前加一个__packed就好了,对呀,怎么忘记这个了。加上以后就都正常了。

路过

鸡蛋

鲜花

握手

雷人

全部作者的其他最新日志

评论 (0 个评论)

facelist

您需要登录后才可以评论 登录 | 立即注册

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

返回顶部