#define与typedef在重定义类型中的区别

时间:2022-02-21 17:06:14

#define 为完全的替换

typedef 重新定一个数据类型

eg

#define charp1 char* 

typedef char* charp2

charp1 a,b;  //a char*  b char 
charp2 c,d;  //c char* d char*

由于typedef重新定义了一个类型,所以c,d都为char*

#define 将charp1 直接替换位 char *  等价与 char * a,b;所以b为char