6.8联合
2018-02-11 本文已影响0人
Hy_Slin
联合是可以(在不同时刻)保存不同类型和长度的对象的变量.(简单来说就是可以在一个变量中保存任意类型int,char,float等等)
联合提供了一种方式,在单块存储区域中管理不同类型的数据,而不需要在程序中嵌入任何同机器有关的信息.(就是在一块内存地址中保存多种数据类型.不用每个数据类型申请一块内存)
联合的目的,一个变量可以合法的保存多种数据类型中任何一种类型的对象.其语法类似于结构.
定义的变量必须足够大,以保证可以存储其中类型最大的一种,具体长度同具体的实现有关.这些类型中任何一种类型的对象都可赋值给该变量,且可使用在随后的表达式中,且必须保证是一致的:读取的类型必须是最近一次存入的类型.如果保存的类型与读取的类型不一致,其结果肯定不会太让人满意.
引用结构中的联合成员一样.
联合就是一个结构,对联合允许的操作与对结构允许的操作一样,作为一个整体单元进行赋值,复制,取地址,及访问其中一个成员.
联合只能用其第一个成员类型的值进行初始化.
这个书上讲的不细,我也没太懂.以后在说.