你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

各位大哥帮我看看,关于结构指针强制转换为整型指针的...

[复制链接]
xunlizhan 提问时间:2017-8-20 21:48 /
捕获.JPG 为什么不是a=0x0201;b=0x0403;c=0x0605 ?问题出在哪里?
收藏 评论8 发布时间:2017-8-20 21:48

举报

8个回答
wenyangzeng 回答时间:2017-8-20 22:04:25
你那个test_t结构中,应该将uint16_t a45放在最上面,让数据对齐。

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

andey 回答时间:2017-8-20 22:46:52
提示: 作者被禁止或删除 内容自动屏蔽
andey 回答时间:2017-8-20 22:48:03
提示: 作者被禁止或删除 内容自动屏蔽
Inc_brza 回答时间:2017-8-21 01:09:55
本帖最后由 Inc_brza 于 2017-8-21 01:14 编辑

结构体会对结构体内元素最大的做对齐单元(未使用对齐指令), 然后你这玩意是小端格式的,所以出现这样的结果

评分

参与人数 1ST金币 +2 收起 理由
zero99 + 2

查看全部评分

xunlizhan 回答时间:2017-8-21 06:31:56
明白了,谢谢各位!
LoveMCU001 回答时间:2017-8-21 11:11:18
结构型指针uint16 *应该是偶数对齐的,每个变量的起始地址应该是偶数
七哥 回答时间:2017-8-21 11:43:20
楼上几层都解释过了,你可以看一下结构体内部各元素的地址是多少
没事逛荡 回答时间:2017-8-22 09:19:57
或者强制1字节对齐

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32Cube扩展软件包
意法半导体边缘AI套件
ST - 理想汽车豪华SUV案例
ST意法半导体智能家居案例
STM32 ARM Cortex 32位微控制器
关注我们
st-img 微信公众号
st-img 手机版