C语言允许用户使用 typedef 关键字来定义自己习惯的数据类型名称,来替代系统默认的基本类型名称、数组类型名称、指针类型名称与用户自定义的结构型名称、共用型名称、枚举型名称等。
一旦用户在程序中定义了自己的数据类型名称,就可以在该程序中用自己的数据类型名称来定义变量的类型、数组的类型、指针变量的类型与函数的类型等。
一. typedef的4种用法
1. 为基本数据类型定义新的类型名
系统默认的所有基本类型都可以利用 typedef 关键字来重新定义类型名,示例代码如下所示:
typedef unsigned int COUNT;
2. 为自定义数据类型(结构体、共用体和枚举类型)定义简洁的类型名称
以结构体为例,下面我们定义一个名为 Point 的结构体:
struct Point
{
double x;
double y;
double z;
};
在调用这个结构体时,我们必须像下面的代码这样来调用这个结构体:
struct Point oPoint1={
100,100,0};
struct Point oPoint2;
在这里,结构体 struct Point 为新的数据类型,在定义变量的时候均要向上面的调用方法一样有保留字 struct,而不能像 int 和 double 那样直接使用 Point 来定义变量。现在,我们利用 typedef 定义这个结构体,如下面的代码所示:
typedef struct tagPoint
{
double x;
double y;<