您的位置:首页 > 编程语言 > C语言/C++

[Union]C语言编程中联合Union的学习

2015-07-11 00:18 363 查看
问题描述:联合形式和结构相似,但是只给联合中最大的成员分配足够的内存空间,联合成员在这个空间可以被彼此覆盖。
Union:利用联合的特性,可以实现一些可能需要指针操作的功能。比如将一个四字节float型数值的内存存入一个4个元素的字节数组:
union {
float i;
charbyte_array[4];
}u;
u.i = 31.5;
然后读取byte_array[]的内容就是刚存入的float型数值的内存的内容了。
Union的声明:与struct一样,可以
typedef union{
float i;
charbyte_array[4];
}u;
u u1,u2;

union u{
float i;
charbyte_array[4];
};
union u u1,u2;
union之间也可以用=赋值,与struct一样。
Union的初始化:与struct一样,可以直接初始化,也可以指定初始化,但由于联合的特性,只能也只需初始化一个成员。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: