1、1.1:基础用法:typedef int size_i;则此时size_i就是int的别名。

2、typedef并不创建新的类型。

3、仅为现有类型添加一个同义字。


(资料图)

4、可以在需要int的上下文中使用size_i.1.2: typedef与struct结合使用:typedef struct tagMyStruct{int iNum;long lSize;} MyStruct, *pMyStruct;这段代码完成由两个操作组成:动作一:struct tagMyStruct{int iNum;long lSize;};定义了一个新的结构体类型。

5、tagMyStruct称为“tag”,即“标签”,实际上是一个临时名字,struct关键字和tagMyStruct一起,构成了这个结构类型,不论是否有typedef,这个结构都存在。

6、用struct tagMyStruct varName来定义变量,但要注意,使用tagMyStructvarName来定义变量是不对的,struct 和tagMyStruct合在一起才能表示一个结构类型。

7、动作二:使用typedef为这个结构体起了个新别名。

8、typedef struct tagMyStruct MyStruct;typedef struct tagMyStruct *pMyStruct;因为MyStruct 是struct tagMyStruct的别名。

9、 可以直接使用MyStruct来定义变量。

10、如: MyStructvarName;C语言允许在结构中包含指向它自己的指针,但上述代码的根本问题在于typedef的应用。

11、代码分两个过程:结构体的定义,结构体的新命名。

12、1.3:typedef与enum结合使用:typedef enum tagweekday{ sun, mon, tue, wed, thu, fri, sat }WeekDay;则enum tagweekday是一个新枚举类型。

13、WeekDay则是这个枚举类型的新名字。

14、与struct类似, enumweekday组成一个类型。

本文到此分享完毕,希望对大家有所帮助。


关键词: