出现结构体的时候,会存在明显的数据对齐问题
数据对齐的原则:如果结构体的成员中占内存最大的成员类型没有超过处理器的位数,则按照此成员对齐;若超过了,则按照处理器的位数对齐。
举例说明:
struct A{
short a;
short b;
short c;
};
则sizeof(A)为6;
struct B{
float a;
char b;
int c;
};
则sizeof(B)为12
出现结构体的时候,会存在明显的数据对齐问题
数据对齐的原则:如果结构体的成员中占内存最大的成员类型没有超过处理器的位数,则按照此成员对齐;若超过了,则按照处理器的位数对齐。
举例说明:
struct A{
short a;
short b;
short c;
};
则sizeof(A)为6;
struct B{
float a;
char b;
int c;
};
则sizeof(B)为12