关于C语言结构体的填充对齐问题
小甲鱼分享的文章看到的https://fishc.com.cn/forum.php?mod=viewthread&tid=83418&extra=page%3D2%26filter%3Dtypeid%26typeid%3D571里面有说到填充的时候,在位域也进行了考虑
根据里面的解释的话sizeof(foo5)不是应该是6吗?(1bit 和 4bit 和7 Bit 加上填充的4 bit共字节,char 和short再对齐填充一共是2+2+2 = 6);
为什么运行以后的结果是8?
还是说我的理解错误了呢。。 就算用了位域,前面的最大的类型是int还是要按照int去对齐补齐没有其他声明的话 flamer 发表于 2019-8-30 13:48
就算用了位域,前面的最大的类型是int还是要按照int去对齐补齐没有其他声明的话
也就是位域的那三个变量加起来才12位,需要补齐到4字节的意思吗?
页:
[1]