www.cnblogs.com/ruiyqinrui

开源、架构、Linux C/C++/python AI BI 运维开发自动化运维。 春风桃李花 秋雨梧桐叶。“力尽不知热 但惜夏日长”。夏不惜,秋不获。@ruiY--秦瑞

python爬虫,C编程,嵌入式开发.hadoop大数据,桉树,onenebula云计算架构.linux运维及驱动开发.

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

1,共用体概念

使几个不同的变量占用同一段内存空间的的结构称为共用体,
共用类型的定义与结构体类型的定义一样
union 共用体名
{
  数据类型 成员列表;
};
共用类型变量的定义与结构体变量定义也一样;
分之间定义与间接定义2种;

定义类型的同时定义变量,也可以先定义类型再定义变量;

union [data]
{
  int i;
  char ch;
  float f;
} un1,un2,un3;

共用变量占用的内存空间,等于最长成员的长度,而不是各个成员长度之和;

列如上面的共用体un1,un2,un3,在16位系统占用的内存空间为4个字节是最大的数据类型占用

3,共用体类型特点

1,共用体类型中,系统采用覆盖技术,实现共用变量各成员的内存共享,介于此,在某一时刻存放的和起作用的是最后一次存入的成员值.
由于所有成员共享同一内存空间,共用变量与各成员的地址相同.

共用体变量与结构体变量间区别
结构体类型变量所占内存长度是各成员所占内存长度和,
共用体类型变量,所占内存长度等于最长的成员长度.

4,枚举型

枚举类型定义
enum 枚举类型名 {取值列表};
列如:enum weekdays {星期一,星期二,星期三,星期四,星期五,星期六,星期天};
枚举型仅适应于取值有限的数据

typedef 别名类型申明,类似于linux命令alias;

C语言用typedef给系统数据类型定义别名
用以给已有数据类型定义新的别名,已有数据类型是指由系统提供的标志数据类型,或是自定义的数据类型,

typedef使用说明

http://netkiller-github-com.iteye.com/blog/1972504

 

posted on 2013-11-07 14:18  秦瑞It行程实录  阅读(532)  评论(0编辑  收藏  举报
www.cnblogs.com/ruiyqinrui