typedef struct与struct,union 嵌套使用C语言
时间: 2024-11-15 22:13:36 浏览: 3
C语言知识点总结-教程与笔记习题
在C语言中,`typedef` 结构体是一种常见的技巧,它允许我们为复杂的结构体类型创建一个别名,使得代码更易读。`typedef` 通常与 `struct` 一起用于定义一个新的类型名称。
例如:
```c
// 定义了一个名为 Point 的结构体
typedef struct {
int x;
int y;
} Point;
// 现在我们可以直接使用 Point 类型,而不必每次都写出 struct 子句
Point p; // 相当于 struct {int x; int y;} p;
// 当然,嵌套使用也是可以的,比如定义一个包含点的容器结构体
typedef struct {
Point position; // 包含一个点的成员
...其他成员...
} Container;
// 或者使用 union 来合并不同类型的数据,union 中的所有成员共享同一块内存空间
typedef union {
int asInt;
float asFloat;
Point asPoint;
} UnionType;
```
在 C 语言中,`union` 另外一种数据组织方式,它允许不同类型的变量共享相同的内存空间。当你访问 union 内部的不同成员时,实际存储的是最后一个赋值的类型所占的空间。
阅读全文