关于结构体的大小讨论

 今天在测试题库中看到一道题,收益匪浅。基础知识加以了巩固。拿出来分享一下。

    • struct stu
      {
       char c;
       static long double a;
       union t
       {
        int a;
        int b;
       };
       enum weekday{Monday};
      };

这个结构体的大小为多少即:sizeof(stu)的结果为多少呢?_____1_______

解释:

static 是全局的一部分,不属于结构体

union只是做了声明,并没有在stu中添加实例,enum同理

PS:

union(联合体)是在一种在不同时间内能存储不同数据结构和不同长度的变量,但在同一时间内,只能存储联合体中的一个变量,所有联合体中的变量共占同一存储空间,所以联合体的大小是其中所占空间最大的数据结构变量。

union u

{

  char c;

  int i;

  double d;

}

 

用已声明的共用体定义一个共用体实例

union u test;

sizeof(test)为8

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值