内存对齐规则如下:1. unsigned char a 占用1字节。2. int b 需要4字节对齐,因此会在 a 之后添加3字节的填充,使 b 从4字节对齐的地址开始。3. short c 需要2字节对齐,但由于 int b 已经占据了4字节对齐的地址, c 可以直接放在 b 之后,不需要额外的填充。因此,结构体 s 的起始地址是4字节对齐的。
内存对齐规则如下:1. unsigned char a 占用1字节。2. int b 需要4字节对齐,因此会在 a 之后添加3字节的填充,使 b 从4字节对齐的地址开始。3. short c 需要2字节对齐,但由于 int b 已经占据了4字节对齐的地址, c 可以直接放在 b 之后,不需要额外的填充。因此,结构体 s 的起始地址是4字节对齐的。
登录后提交答案