C语言中的结构体、联合体、位操作和枚举
1. 引言
在C语言里,结构体(有时在C标准中被称作聚合体)是将相关变量归在一个名称之下的集合。和数组不同,数组里的元素只能是同一种数据类型,而结构体可以包含多种不同数据类型的变量。结构体常被用来定义要存储在文件里的记录,指针和结构体有助于构建更复杂的数据结构,像链表、队列、栈和树等。下面还会探讨以下几个方面:
- typedef:用于为之前定义的数据类型创建别名。
- 联合体:和结构体类似,但成员共享相同的存储空间。
- 位运算符:用于操作整数操作数的位。
- 位域:结构体或联合体里的无符号整数或整数成员,能指定成员存储的位数,有助于紧凑地存储信息。
- 枚举:用标识符表示的一组整数常量。
2. 结构体定义
结构体属于派生数据类型,是用其他类型的对象构建而成的。下面是一个结构体定义的示例:
struct card {
char *face;
char *suit;
};
关键字 struct 用于引入结构体定义,标识符 card 是结构体标签,它为结构体定义命名,并且和 struct 一起用于声明该结构体类型的变量,例如 struct card 。在结构体定义的花括号内声明的变量就是结构体的成员。同一结构体类型的成员名称必须唯一,但不同结构体类型可以包含相同名称的成员,且不会产生冲突。每个结构体定义都必须以分号结尾。
结构体成员
超级会员免费看
订阅专栏 解锁全文
2480

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



