结构体中的内存问题
struct A
{
char a;\\1+3
int b;\\4
}
sruct B
{
char a;\\1+1
short b;\\2
char c;\\1+3
}
在这里就说明了,不同的数据类型所需要的内存是不同的,我们可以发现,在数据类型相同的情况下,两者所需要的内存并不相同,这说明,所需内存大小和数据类型输入顺序是有一定的关系的,一般情况下,我们把数据类型内存小的放在前面,所需内存打的放在后面,这样我们可以有效的利用内存空间。要做到不出错且尽量节省内存,就要做到合理运用空间。
struct E
{
char a;\\1+3
int b;\\4
short c;\\2
}\\10 错误!!!!!!!!
如下图所示
struct E
{
char a;\\1+3
int b;\\4
short c;\\2+2
}\\10+2