结构体、共用体、枚举:
分析:
首先声明的结构体元素year的地址是最低的(0012FF74),而最后声明的day的地址是最高的(0012FF7C)。而我们又知道在栈中声明变量的时候,地址是从高到低的分配的.因此,切记在结构体中声明的变量与直接在外面声明是不一样的.在结构体中,最先声明的变量放在最低位的.
另外,union的内存是共享的.
enum的使用:枚举元素是常量.在C中, 默认下,第一个枚举子被赋值0,接下来的枚举子取值是前面一个枚举子的取值+1.枚举的取值范围:如果某个枚举中所有枚举子的值均非负,该枚举的表示范围就是[0:2^k-1],其中2^k是能使所有枚举子都位于此范围内的最小的2的幂;如果存在负的枚举值,该枚举的取值范围就是[-2^k,2^k-1].
本文详细介绍了C语言中的结构体(struct)、共用体(union)及枚举(enum)的基本概念与使用方法。通过具体示例展示了结构体成员的内存布局规律、共用体内存共享的特点以及枚举类型的定义与应用。适合初学者理解和掌握这些基本的数据组织形式。
1458

被折叠的 条评论
为什么被折叠?



