簡體   English   中英

如何計算C結構中的填充

[英]How to calculate padding in C struct

雖然我了解填充通常如何在 C 結構中工作,但我很難理解內部結構是如何填充的。 例子:

struct inner
{
    int a;
}

struct outer
{
   char a;
   struct inner b;
}

member outer.a和 member outer.b之間的 padding 是如何計算的?

當成員inner.a的數據類型從int變為shortdouble時,struct outer末尾的填充如何計算?

在 32 位架構和 64 位架構中計算這些填充有什么含義?

為了更好地理解,我總是發現最好對這些東西進行十六進制轉儲並四處玩耍。 這是您的案例的示例:

例子

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM