5.typedef (存储类)关键字
与auto,extern,mutable,static,register等关键字不能出现在同一个表达式中
合法的变量定义转化为类型 , 注意全局变量和局部变量
typedef int array[10]
int main()
{
array a,b;
//typedef将array转化为整形数组,因此,此时定义的a,b是整形数组
}
typedef int array[10]
int main()
{
array a,b;
}good;//此时good只是array的一个别名,他们的功能什么的都一致
6.static静态修饰符
作用:
(1)续命,函数内部定义静态变量时,在数据区,相比于普通的函数里定义的变量,在调用函数时才会被分配空间,活得久
int a=0;
static int b=0;//2.静态变量只是初始化一次
extern 外部关键字,声明在同一工程下的其他文件里面有,在执行多文件操作时,就会链接在一起,但是吧,static就是个例外,它就像一个私有类型,可见性仅在其定义的文件中有效
static对全局变量来说,有可见性限制;
对局部变量来说,延长局部变量的寿命
为什么static只会被定义一次?
static定义的变量在数据区,但第二次调用时,在这个变量区下有一个记忆空间
7.const修饰谁,谁就可读不可赋值
不管修饰全局变量还是局部变量,必须要初始化!!!