未打包的结构体在GCC中自动打包到打包的结构体中吗?
换句话说,__packed__
属性是否会自动传播到嵌套结构体中?
也就是说:
struct unpackedStruct{
int16_t field1;
int32_t field2;
// etc...
}
struct packedStruct{
int16_t field1;
struct unpackedStruct struct1; // <-- Is this struct packed?
// etc...
} __attribute__((__packed__));
unpackedStruct
的代码都将失败。无论如何,您可以进行测试。 - Nate Eldredge