收藏官网首页
查看: 11288|回复: 0

字节不对齐导致的程序崩溃

51

主题

99

帖子

827

积分

高级会员

Rank: 4

积分
827
跳转到指定楼层
楼主
发表于 2016-5-6 12:25:41 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
汉枫LPB120模块
在嵌入式开发当中,常常要求我们尽量做到字节对齐,一是这是个良好的开发习惯,另一个是有些嵌入式平台如果字节不对齐会造成crash,这里给大家同步一下字节不对齐导致程序崩溃的遇到的一个现像,这个问题在乐鑫的平台上表现的现象就是把一个奇数的地址赋给指针,然后通过这个指针做赋值操作就会导致程序直接崩溃,比如下面的通过传入一个二级指针来获取数据(图1),获取上来的还是一个指针(即地址),那么这个指针就有可能是指向奇数的地址即没有遵守对齐,那么当我们通过这个指针来赋值或者取数据(图2,图3),就会出问题。字节不对齐不会所有的平台都会引起导致崩溃,但肯定会效率比较低(图4),后续支持一些平台如果不支持字节不对齐的话,移植我们的代码也会同样有这样的问题。



图1


图2


图3


图4,这段链接:http://blog.csdn.net/wqlyqy/article/details/8650247


您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

加入Q群 返回顶部

版权与免责声明 © 2006-2024 Gizwits IoT Technology Co., Ltd. ( 粤ICP备11090211号 )

快速回复 返回顶部 返回列表