关于typedef

在C语言里面经常看到这样的代码,究竟是什么意思呢?原来是定义了一个长度为LEN的char数组,类型别名为string。这样就可以通过string s1, s2; 来声明变量了。

#define LEN 10
typedef char string[LEN];
string s1, s2;


typedef 在类型定义方面,比define好,主要是避免了如下的意外

#define PCHAR char*
PCHAR char_point, char_a;//此处char_a 其实还是一个char而不是char指针


C++ 可以定义一个struct xx{...},然后用xx example;来定义一个变量。但是C的话就必须这样写struct xx example;

为了少写一个struct,C的struct 类型定义一般是这样:

typedef struct mystruct{
....
}mystruct;
mystruct  example;


你可能感兴趣的:(C语言,typedef)