struct a {char b;double a;}通过字节对齐应该是大小应该是12还是16?我这里Linux上是12,会有16这个结果吗?[解决办法]会,M$VC缺省是pack(8)的,结果就是16 ... [解决办法]gcc下char是4字节,double是8字节,所以是12啊。[解决办法]char 是1字节 double 是4字节 32位操作系统,为了效率问题,保持4字节对齐, char之后,在double的时候,会从下个4字节开始 所以是4+8=12