摘自《c专家编程》
typedef可以看成一种彻底的封装类型,在typedef声明类型之后不能再往里面增加其他的内容。
例子:
#define peach int unsigned peach i; //没问题 typedef int banana; unsigned banana i; //错误,不能增加unsigned
#define宏定义只是用于简单的替换
#define int_ptr int * int_ptr chalk, cheese; int * chalk, cheese; //展开之后,chalk是指针变量,cheese是整型变量 typedef int * int_ptr; int_ptr chalk, cheese; //chalk和cheese均为整型指针变量