共用体(联合体)类型

共用体数据类型是指将不同的数据项组织为一个整体,它和结构体有些相似之处,但是共用体在内存中占用首地址相同的一段存储单元。

共用体的定义与声明

1. 共用体的一般定义形式
union typename
{
    
    
	type1 var1 ;
	type2 var2;
	...
	typen varn;	
};
  1. 声明共用体数据类型变量有以下几种方式:
// 先定义共用体,再声明共用体变量
union myTest
{
    
    
	int i;
	char ch ;
	double d;
};
myTest my_u ; //声明变量

// 直接在定义时声明共用体变量
union myTest
{
    
    
	int i;
	char ch;
	double d ;
}mu_u;

// 直接声明共用体变量
union 
{
    
    
  int i ;
  char ch ;
  double d;
}my_u;

共同体的大小

  1. 共用体每个成员分别占有自己的内存单元。
  2. 共用体变量所占的内存长度等于最长的成员长度。
  3. 一个共用体变量不能同时存放多个成员变量的值,某一时刻只能存放其中的一个成员的值。

共用体的特点

  1. 共用体可以满足在同一内存段存放几种不同类型的数据。
  2. 能够访问的是共用体变量中最后一次被赋值的成员。
  3. 共用体变量的地址和它的各成员的地址都是同一个地址。
  4. 不能对共用体变量名赋值。
  5. 不能在定义共用体时对它进行初始化。
  6. 不能用共用体变量作为函数参数。

猜你喜欢

转载自blog.csdn.net/qq_45279570/article/details/109710187
今日推荐