关于unsigned char型数组的起始地址

2019-03-24 15:56发布

由于M3的内核是32位的,如果用unsigned char定义一个数组,数组的起始地址一定是32位字的地址啊?   比如:        unsigned char data[N];        unsigned long *usdata;          usdata = (unsigned long *) data;   有没有可能,数组data[N]的起始地址的末两位不是00,执行强制转换的时候丢失前面的部分数据啊? 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
6条回答
brucege888
2019-03-25 08:11

如果单独定义一个数组,似乎都是4字节对齐,但是在一个结构体内部定义数组的时候,就需要特别注意了,并不一定是4字节对齐的。。

一周热门 更多>

相关问题

    相关文章