字节不对齐导致的程序崩溃
在嵌入式开发当中,常常要求我们尽量做到字节对齐,一是这是个良好的开发习惯,另一个是有些嵌入式平台如果字节不对齐会造成crash,这里给大家同步一下字节不对齐导致程序崩溃的遇到的一个现像,这个问题在乐鑫的平台上表现的现象就是把一个奇数的地址赋给指针,然后通过这个指针做赋值操作就会导致程序直接崩溃,比如下面的通过传入一个二级指针来获取数据(图1),获取上来的还是一个指针(即地址),那么这个指针就有可能是指向奇数的地址即没有遵守对齐,那么当我们通过这个指针来赋值或者取数据(图2,图3),就会出问题。字节不对齐不会所有的平台都会引起导致崩溃,但肯定会效率比较低(图4),后续支持一些平台如果不支持字节不对齐的话,移植我们的代码也会同样有这样的问题。图1
图2
图3
图4,这段链接:http://blog.csdn.net/wqlyqy/article/details/8650247
页:
[1]