共用体

共用体は同時に別の値を記憶することができない。

typedef union Year{
    int ad;
    int gengo;
}Year;

int main(void){
    Year myyear;
    int a,g;
    
    printf("西暦を入力してください\n");
    scanf("%d",&a);
    
    myyear.ad = a;
    
    printf("西暦は%dです。\n",myyear.ad);
    printf("元号は%dです。\n",myyear.gengo);
    
    printf("元号を入力してください。\n");
    scanf("%d",&g);
    
    myyear.gengo = g;
    printf("元号は%dです。\n",myyear.gengo);
    printf("西暦は%dです。\n",myyear.ad);
    
    return 0;
}

出力結果

西暦を入力してください
2001
西暦は2001です。
元号は2001です。
元号を入力してください。
21
元号は21です。
西暦は21です。
Program ended with exit code: 0