结构体和联合体“有名无名”问题

 

struct s1//结构体s1只有类型,没有变量,没有变量自然就没有空间占用(s5同)。 
{  
    union u
    {  
        int i;  
    };  
    struct ss1
	{  
        int i;  
    };  
};//0个字节



 struct s2
{  
      union//没有类型,声明了结构体的一个成员,占内存
      {  
          int i;  
      };  
      struct//同上
      {  
          int i;  
      };  
};//8个字节
  

  
struct s3
{  
   //既有类型也有变量,占内存
     union su3
     {  
          int i;  
     }su33;  
     struct ss3
     {  
          int i;  
     }ss33;  
};//8个字节 
 

 
union su4
{  
    int i;  
}; 
 
struct ss4
{  
    int i;  
};  
struct s4
{
    //和s3相同  
    union su4 su44;  
    struct ss4 ss44;  
};//8个字节 

struct s5
{
   //和 s1 相同 
    union su4;  
    struct ss4;  
};//0个字节 

struct s6
{
    //和s1相同 
    union
    {  
       int;//int i中i是个变量,如果换成int;结果相同
    };  
     struct
    {  
        int;  
    };  
};//0个字节
//类型就是类型,和是不是结构体、联合体无关的,

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值