【C语言精讲】typedef和#define差异对比

typedef定义

typedef:重新产生新的类型(一个独立的类型)

#include <stdio.h>

typedef int* pint;

int main()
{
    pint pa, pb;
    //表示int* pa, *pb;
    //pa和pb的类型均为int*

    return 0;
}

#define定义

#define定义的内容在运行时被直接替换上去

# include <stdio.h>
# define PINT int*

int main()
{
    PINT pa, pb;
    //表示int* pa, pb; 
    //pa类型为int*,pb类型为int
    return 0;
}

int* pa, pb;        ->   int *pa;     int pb;

上一篇:C语言库函数qsort()详解


下一篇:可持久化线段树