相关疑难解决方法(0)

为什么structof sizeof不等于每个成员的sizeof总和?

为什么sizeof操作员返回的结构尺寸大于结构成员的总尺寸?

c c++ struct c++-faq sizeof

644
推荐指数
11
解决办法
18万
查看次数

c中嵌套结构的内存布局

我理解C中的结构概念.我也理解结构如何存储在内存中.所以我创造了以下内容:

  struct tag1 {
      char a;
      int b;
  }var1;
Run Code Online (Sandbox Code Playgroud)

结构的大小是8个字节(以gcc为单位).

内存布局示例.

 -----------
|  |  |  |  | ---> char a (only 1 byte is used and remaining 3 bytes are padding)
 -----------
|  |  |  |  | ---> int b (4 byte is used)
 -----------
Run Code Online (Sandbox Code Playgroud)

现在我对这个示例程序有一些疑问.嵌套结构如何存储在内存中.

  struct tag1{
      int a;
      struct tag2{
          long b;
      }var1;
  }var2;
Run Code Online (Sandbox Code Playgroud)

c structure

8
推荐指数
1
解决办法
1387
查看次数

标签 统计

c ×2

c++ ×1

c++-faq ×1

sizeof ×1

struct ×1

structure ×1