内存对齐:为什么你的结构体可能比预期大三倍
一个看似简单的面试题:在64位系统上,下面的结构体占多少字节? struct Example { char a; // 1字节 int b; // 4字节 char c; // 1字节 double d; // 8字节 }; 把所有成员的大小加起来:1 + 4 + 1 + 8 = 14字节。但实际答案是24字节——比预期多了71%。 ...
一个看似简单的面试题:在64位系统上,下面的结构体占多少字节? struct Example { char a; // 1字节 int b; // 4字节 char c; // 1字节 double d; // 8字节 }; 把所有成员的大小加起来:1 + 4 + 1 + 8 = 14字节。但实际答案是24字节——比预期多了71%。 ...