typedef 理解

来源:互联网 发布:虚拟机和系统网络连接 编辑:程序博客网 时间:2024/05/01 21:47

面试不堪入目,重拾C++基础,偶看到typedef 后感觉不慎了解,在学校一直是在讲解typedef和define一样都是用来申明一个别名的,对于简单的如:

#define int INT;

typedef int  INT;

确实简单的理解是定义了一个别名很对;

但如果是

typedef void (*SIG_TYP)(int);

typedef void (*SIG_ARG_TYP)(int);

SIG_TYP signal(int ,SIG_ARG_TYP);

就感觉无从下手了,百思不得解后看老鸟的博客,终于有豁然开朗的感觉。下面是对老鸟的理解并附博文地址

typedef和int等定义变量一样的,只是typedef是用来定义类型别名的,就像int是用来定义整形变量的一样

如:

int (*SIG_TYP)(int);

定义了一个SIG_TYP 的函数指针

typedef int (*SIG_TYP)(int);

定义了一个SIG_TYP的函数指针的类型别名

http://blog.csdn.net/rabbit1125/article/details/626012