c 函数及指针学习 8

时间:2014-05-01 04:08:15   收藏:0   阅读:357

联合体

1
2
3
4
5
6
7
8
9
10
11
12
13
#include <stdio.h>
 
union sa
    {
    double a;
    int b;
    };
 
int main()
{
union sa ssa;
printf("%d \n",sizeof(union sa));
}

bubuko.com,布布扣

联合体的声明,定义,与结构体一样。

联合体的长度为最长成员的长度。

联合体的初始化

1
2
3
4
5
6
7
8
9
10
11
12
13
#include <stdio.h>
 
union sa
    {
    int a;
    int b;
    };
 
int main()
{
union sa ssa={1};;
printf("%d \n",ssa.a);
}

bubuko.com,布布扣

初始化的值必须为第一个成员的类型

如果是其他类型,则会转化成该类型(如果能);

1
union sa ssa={1.9};

a为1;

1
2
3
4
5
6
7
8
9
10
11
12
#include <stdio.h>
union sa
    {
    float a;
    int b;
    };
 
int main()
{
union sa ssa={1};
printf("%f \n",ssa.a);
}

a为1.000000





来自为知笔记(Wiz)


c 函数及指针学习 8,布布扣,bubuko.com

评论(0
© 2014 mamicode.com 版权所有 京ICP备13008772号-2  联系我们:gaon5@hotmail.com
迷上了代码!