#define & typedef 区别

来源:互联网 发布:单片机下载程序元件 编辑:程序博客网 时间:2024/06/08 12:59

宏定义只是简单的字符串代换,是在预处理完成的, 而typedef是在编译时处理的, 它不是简单的代换, 而是对类型说明符重新命名. 被命名的标识符具有类型定义说明的功能.

宏定义为了更符合人习惯的代码,  typedef是 码代码的时候 更清晰.

#include <stdio.h>#define INT1 inttypedef int INT2;#define INT3 int*typedef int* INT4;int main(int argc, const char * argv[]){INT1 a, b;a = 10;b = 20;printf("a=%d,b=%d\n", a, b);INT2 c, d;c = 30;d = 40;printf("c=%d,d=%d\n", c, d);    //************************ stone ***    INT3 e, f; // int *e,f ---> int *e , int f    e = &a;    f = 20;    printf("e=%d,f=%d\n", *e, f);    INT4 h, i; // int * h, int * i    h = &c;    i = &d;    printf("h=%d,i=%d\n", *h, *i);return 0;}


0 0
原创粉丝点击