typedef
typedef是一个高级数据特性,可以为某一类型自定义名称,这与#define有许多相似之处,以下列出其不同之处:
- typedef只能用于定义类型的名称,而不能用于值
- typedef由编译器解释,不是预处理器
使用方法:在定义类型变量之前直接加上typedef关键字就可以了
范例:
typedef int i;
在使用typedef来命名一个结构类型时,可以省略该结构的标签:
typedef struct {
double x;
double y;
}COMPLEX,*complex;
这时可以这样使用该结构体:
COMPLEX r1 = {3.0,6.0};
COMPLEX r2;
*complex r1 = {3.0,6.0);
*complex r2;
值得注意的是typedef 并没有创建任何新的类型,它只是为某个已存在的类型增加了一个标签