#define与typedef区别
1.#define 常用它来 定义常量 (包括无参量与带参量),属于 预处理 过程(编译之前),例, #define Name int ; 2.typedef 常用来 定义一个标识符及关键字的别名 ,属于 编译 过程,实际不分配内存空间,例, typedef int Name ; 3.#difine 不进行类型检查, 只是简单地字符替换 ,易出错; typedef 具有一定的封装性,不易出错; 1 #include <iostream> 2 #include <stdio.h> 3 using namespace std; 4 #define Name 3+3 5 6 int main() 7 { 8 int m; 9 int a=6; 10 m=Name*a; 11 cout<<m<<endl; 12 return 0; 13 14 } View Code 结果 m=21 ;因为: m=Name*a=3+3*6=3+18=21; 4. typedef struct Node { int x; }node1,node2; 在C中, struct Node =node1=node2 , 为结构体名; 在C++中, struct Node =Node=node1=node2 , 为结构体名; 5. struct Node { int x; }node1,node2; 在C中