请教大家,结构体的边界对齐是与编译器相关的还是与处理器相关的?
我的编译器是Tornado,处理器是PPC,有人告诉我该怎么设置边界对齐吗?谢谢
------解决方案--------------------------------------------------------
处理器是PPC?这个什么概念?
边界对齐是跟具体的应用相关,应用层取值有边界对齐的要求的话,那么提供给这个应用所调用的数据就得是边界对齐。
边界对齐假设32bit,那么你的数据必须都是32bit的倍数,因为取值是按32bit 32bit 32bit这样来取的。要是你的实际数据是24bit,你就得将其高8位填0,凑成32bit。
------解决方案--------------------------------------------------------
边界对齐其实就是内存对齐;
把内存中的字节对齐后,cpu对数据的访问处理就会高效一些。
怎么对齐?按多少字节对齐都是实际应用相关的。没有规定。
不对齐一样能跑。