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)); } |
联合体的声明,定义,与结构体一样。
联合体的长度为最长成员的长度。
联合体的初始化
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); } |
初始化的值必须为第一个成员的类型
如果是其他类型,则会转化成该类型(如果能);
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
评论(0)