typedef是C语言中的一个关键词,用于定义新的类型(或者叫类型的重命名)。
1、理解和应用typedef
例1:
typedef int size; //typedef行
int i; //原型行
size i; //应用行
例2:
typedef char Line[81]; //typedef行
char t[81]; //原型行
Line t; //应用行
例3:
typedef int (*fun_ptr)(int,int); //typedef行
int (*fp)(int,int); //原型行
fun_ptr fp; //应用行
总结:
“typedef行”和“原型行”相比,“typedef行”仅仅多个typedef而已。
定义过程:
只要我们能写出原型,就能直接写出typedef行,因为形式上只差一个typedef。如我们写出原型:char t[81],那么加上一个typedef就能得到我们想要的定义,当然也可以修改下类名,如typedef char T[81]。
应用过程:
“T t;”中,T是之前定义的类型,t是通过该类型定义的变量。
理解过程:
想要理解“T t;”,就要找到与之对应的“原型行”,但是“原型行”一般程序中不会出现,所在只能先找到“typedef行”,在通过“typedef行”推导出“原型行”(推导过程就是去掉typedef而已)。
2、使用typedef的重要意义
(1)简化类型,让程序更易理解和书写。
(2)创造平台无关类型,便于移植。