自定义数据类型+联合

116 阅读1分钟

自定义数据类型(typedef):

  • 自定义数据类型(typedef)(将typedef与最后一个单词中间的部分命名为最后一个单词)
    • 新的名字是某种类型的别名
    • 改善了程序的可读性
    • 最后一个单词是别名,中间的是原来的类型
typedef int Length;//使得Length成为了int类型的别名
  
Length a,b,len;//即int a,b,len;
  
Length number[10]//即int number[10];
 
typedef struct ADate{
    int mouth;
    int day;
    int year;
}Date;//将结构类型struct ADate重新取别名叫做Date
Date d;/定义了一个ADate类型的结构变量叫做d

typedef struct {
    int mouth;
    int day;
    int year;
}Date;//声明了一个结构类型将其命名为Date
Date d;/定义了一个Date类型的结构变量叫做d

联合(选择):

union AnElt{
    int i;
    char c;
}elt1,elt2;

选择成员是

  • 一个int i还是
  • 一个char c

sizeof(union···)=sizeof(每个成员)的最大值 (在上面代码块中sizeof(AnElt)=sizeof(int)=4)