自定义与宏定义区别:
1.宏定义不占空间,只在编译时进行简单替换
2.自定义函数有语法检查,但是耗费空间多
定义结构体最好用struct Demo arry[20]这种,而不是跟在结构体申明后面
static修饰局部变量,改变生命周期,直到程序结束才被释放
static修饰全局变量的时候,这个全局变量只能在本文件中访问,不能在其它文件中访问,即便是extern外部声明也不可以
static修饰一个函数,则这个函数的只能在本文件中调用,不能被其他文件调用。Static修饰的局部变量存放在全局数据区的静态变量区。初始化的时候自动初始化为0