共用方式為


編譯器警告 (層級 4) C4366

一元 'operator' 運算子的結果可能未對齊

如果因為封裝而無法對齊結構成員,編譯程式會在該成員的位址指派給對齊的指標時發出警告。 根據預設,所有指標都會對齊。

若要解析 C4366,請變更 結構的對齊方式,或使用 __unaligned 關鍵詞宣告指標

如需詳細資訊,請參閱__unaligned和 套件

範例

下列範例會產生 C4366。

// C4366.cpp
// compile with: /W4 /c
// processor: IPF x64
#pragma pack(1)
struct X {
   short s1;
   int s2;
};

int main() {
   X x;
   short * ps1 = &x.s1;   // OK
   int * ps2 = &x.s2;   // C4366
}