typedef用法总结

来源:互联网 发布:linux 安装命令 编辑:程序博客网 时间:2024/06/08 05:40

 

不管是在C还是在C++中,typedef这个词都不少见,当然出现频率最高的还是在C代码中。Typedef#define有些相似,但是更多的是不同,特别是在一些复杂的用法上。

 

用途1

定义一种类型的别名,而不只是简单的宏替换。可以用作同时声明指针类型的多个对象。

char* pa, pb;//这不符合我们的意图

以下则可以:

typedef char*pchar;(后面是被定义的新的名字)

pchar pa,pb;

 

用途2

用在旧的代码中,帮助struct

 

用途3

typedef定义平台无关的类型。

平台一

typedef  long double REAL;

平台二

typedef  double REAL;

平台三

typedef  float REAL;

在跨平台的时候,只要是改变REAL的定义就可以了。不需要改变源码。

 

用途4

为复杂声明定义一个新的简单的别名。

void (*b[10])(void(*)())

typedef void(*pFunParam)();

typedef void(*pFunx)(pFunParam);

pFunx b[10];

 

最后b就是原来的定义。

原创粉丝点击