uint32_t a; uint8_t b; uint32_t c; uint8_t d 对于32位芯片,应该是需要4字节对齐的。那按常理这4个变量应该占用了13个字节了。 请问在keil里面进行编译的时候,编译器是否会将这几个变量优化成 a,c,b,d 这样排列呢?这样子就只需要占用10字节了。
收藏0 举报
aozima 发表于 2017-11-2 16:12 可能会,甚至丢弃末引用的变量,但不可预测,不同的编译,不同的优化等级,甚至同样的编译器不同的版本,行 ...
Atom2004 发表于 2017-11-6 11:41 你指的普通变量是指怎么样的变量呢?
msblast 发表于 2017-11-9 10:31 pack align
本版积分规则 发表回复 回帖并转播 回帖后跳转到最后一页
人才类勋章
等级类勋章
发帖类勋章
时间类勋章
28
85
0
扫码关注 21ic 官方微信
扫码关注嵌入式微处理器
扫码关注电源系统设计
扫码关注21ic项目外包
扫码浏览21ic手机版
本站介绍 | 申请友情链接 | 欢迎投稿 | 隐私声明 | 广告业务 | 网站地图 | 联系我们 | 诚聘英才
京公网安备 11010802024343号