关闭

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

标签: unionc
346人阅读 评论(0) 收藏 举报
分类:
   问题描述:联合形式和结构相似,但是只给联合中最大的成员分配足够的内存空间,联合成员在这个空间可以被彼此覆盖。
   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一样,可以直接初始化,也可以指定初始化,但由于联合的特性,只能也只需初始化一个成员。
0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:241691次
    • 积分:3763
    • 等级:
    • 排名:第8541名
    • 原创:287篇
    • 转载:16篇
    • 译文:0篇
    • 评论:18条
    最新评论