define是定义宏的,typedef是正常的定义结构体之类别名的。
define前面有#号,typedef前没有。
#define是宏定义.
typedef是定义结构体.
可以这么理解:
define是给你改个名字
而typedef是给你取个外号;
值得注意的地方:define是傻瓜式的替换,使用的时候要注意
define是宏定义,在预处理阶段进行替换,存储在代码段
typedef是重命名
#define 是编译器预处理,仅仅是符号替换的作用。
typedef 是C语言关键字,创建一个新的数据类型。
用他们两个定义复杂数据类型时,typedef定义的类型可以用sizeof()关键字获得尺寸,但define的不行。
define定义 A 替换成 B
typedef是其别名,这个define也可以完成
define可以理解成简单的替换
typedef一般用于定义结构体