|
|
1
2
这可能是由于 padding bytes .正如您所说,结构存储在连续的内存位置是有点正确的,但是编译器可以自由地在元素之间添加填充字节,不管它们是如何选择的,它们这样做是为了使字段与架构自然对齐。由多个字节组成的字通常只有在自然对齐的情况下才能被一条指令访问。 |
|
|
2
1
发生这种情况是因为编译器的默认结构填充为4字节。
如果希望结构元素在内存中一个接一个使用
此外,本帖还可帮助理解结构填充: Structure padding and packing |
|
|
MaPo · Linux,设置锁定ICMP_过滤器选项 1 年前 |
|
Doohyeon Won · 内联函数上的奇怪现象?[关闭] 1 年前 |
|
|
Bobby · 复合字面值总是左值吗? 1 年前 |
|
9-Pin · C: 嵌套结构的堆栈内存分配 1 年前 |