c语言 typedef
在C和C++编程语言中,typedef
是一个关键字。它用来对一个资料类型取一个新名字。目的是为了使源代码更易于阅读和理解。
来看以下程式码:
int coxes;
int jaffa;
...
coxes++;
...
if (jaffa == 10)
...
现在来看以下程式码:
typedef int Apple;
typedef int Orange;
Apple coxes;
Orange jaffa;
...
coxes++;
...
if (jaffa == 10)
...
这两段程式码都做同样的一件事。第二个例子使用了 typedef,使其更易于了解将要进行什么。也就是一个变数包含关于苹果的资讯,而另一个包含关于橘子的资讯。
再来一个例子:
struct var {
int data1;
int data2;
char data3;
};
此处使用者定义一个资料类型 var。
像这样建立一个 var 类型的变数,程式码必须写为(注意,在 C++ 中宣告一个 struct 时,同时也隐含了 typedef,C 则没有):
struct var a;
在例子的最末处加入一行语句:
typedef struct var newtype;
现在要建立类型 var 的变数时,程式码可以写为:
newtype a;
这样就更容易阅读了,因为不用再为每一个 var 类型的变数加上关键字 struct。
也可以给阵列使用 typedef 宣告。
typedef BaseType NewType [arrSize];
这样就可以在宣告一个 BaseType 类型和 arrSize 大小的新阵列时,将程式码写为:
NewType array;
![](https://images2015.cnblogs.com/blog/890856/201609/890856-20160919093511824-2092090426.png)
转自
维基百科,自由的百科全书