结构体总结
2015-12-09 09:34
309 查看
结构体总结
共用体(联合体)
1.一个结构变量的所占内存空间大小,一般大于或者等于结构中所有成员变量大小之和,成员变量在结构体内存空间按照定义的顺序依次存储。
2.共用体是将几种不同类型的变量存放在同一段内存单元中。
3.语法形式:
union 共用体名{
数据类型 成员名;
数据类型 成员名;
......
}共用体变量名;
4.共用体与结构体的定义形式相似,但是含义不同。结构变量所占内存长度一般等于或等于各成员占的内存长度之和,每个成员分别占有自己的内存单元。而共用体所占内存长度等于最长的成员长度。
5.注意:
同一内存段可以用来存放几种不同类型的成员,但是某一时刻只能存放其中一种。在某一瞬间只有一个成员起作用。
共用体变量中起作用的是最后一个存放的成员,在存入一个新成员后,原有的成员就失去了作用。
共用体变量的地址和其成员地址都是同一地址。
不同对共用体变量赋值,也不能在定义共用体变量时对其初始化。
枚举类型
1.语法形式:
enum 枚举名{
标识符[=整型常数],
标识符[=整型常数],
..........
标识符[=整型常数],
};
2.c语言编译器把枚举元素当做整型常量来处理。编译器会将第一个元素赋值为0,第二第三个依次赋值为1,2.....。
3.注意:
枚举中每个成员(标识符)结束符是",",最后一个成员可省略。
初始化时可以赋值负数,以后枚举仍依次加1。
枚举变量只能取枚举说明结构中的某个枚举元素。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201711/a097c389c0d5cca203c502786c3d6944.gif)
共用体(联合体)
1.一个结构变量的所占内存空间大小,一般大于或者等于结构中所有成员变量大小之和,成员变量在结构体内存空间按照定义的顺序依次存储。
2.共用体是将几种不同类型的变量存放在同一段内存单元中。
3.语法形式:
union 共用体名{
数据类型 成员名;
数据类型 成员名;
......
}共用体变量名;
4.共用体与结构体的定义形式相似,但是含义不同。结构变量所占内存长度一般等于或等于各成员占的内存长度之和,每个成员分别占有自己的内存单元。而共用体所占内存长度等于最长的成员长度。
5.注意:
同一内存段可以用来存放几种不同类型的成员,但是某一时刻只能存放其中一种。在某一瞬间只有一个成员起作用。
共用体变量中起作用的是最后一个存放的成员,在存入一个新成员后,原有的成员就失去了作用。
共用体变量的地址和其成员地址都是同一地址。
不同对共用体变量赋值,也不能在定义共用体变量时对其初始化。
枚举类型
1.语法形式:
enum 枚举名{
标识符[=整型常数],
标识符[=整型常数],
..........
标识符[=整型常数],
};
2.c语言编译器把枚举元素当做整型常量来处理。编译器会将第一个元素赋值为0,第二第三个依次赋值为1,2.....。
3.注意:
枚举中每个成员(标识符)结束符是",",最后一个成员可省略。
初始化时可以赋值负数,以后枚举仍依次加1。
枚举变量只能取枚举说明结构中的某个枚举元素。
![](https://oscdn.geek-share.com/Uploads/Images/Content/201711/a097c389c0d5cca203c502786c3d6944.gif)
相关文章推荐
- 如何组织构建多文件 C 语言程序(二)
- 如何写好 C main 函数
- Lua和C语言的交互详解
- 关于C语言中参数的传值问题
- 简要对比C语言中三个用于退出进程的函数
- 深入C++中API的问题详解
- 基于C语言string函数的详解
- C语言中fchdir()函数和rewinddir()函数的使用详解
- C语言内存对齐实例详解
- C语言编程中统计输入的行数以及单词个数的方法
- 使用C语言判断英文字符大小写的方法
- c语言实现的带通配符匹配算法
- C语言实现顺序表基本操作汇总
- C语言中计算正弦的相关函数总结
- 使用C语言详解霍夫曼树数据结构
- 探讨C语言的那些小秘密之断言
- C语言实现BMP转换JPG的方法
- 深入探讨C语言中局部变量与全局变量在内存中的存放位置
- C语言查找数组里数字重复次数的方法
- C语言泛型编程实例教程