1. define 是按照从上到下的顺序的
#define 必须先定义,否则报错
2.函数体内的define的影响
2.1 从定义开始的位置起,之后都有效
不受函数作用域的限制
#include <stdio.h>//int a[N] = {0};#define N 100int a[N] = {0};
//int b[X]; void abcd(void)
{
#define X 10int bbb[X] = {10};printf("bbb[0] = %d\n",bbb[0]);return ;}int b[X];int main(void)
{abcd();printf("sizeof b = %d\n",sizeof b);return 0;
}