typedef:类型重定义(取小名)
unsigned int a=10;
等价于
typedef unsigned int u_int
...
u_int a=10;
------------------------------------------------------------------------------------------------------------
static---静态的
1.修饰局部变量
2.修饰全局变量
3.修饰函数
①修饰局部变量:
在test1函数中的变量b(默认被auto修饰)自动创建,调用完以后自动销毁,每次调用test1都会创建一个b=1,然后再+1,最后输出结果。在test2函数中的变量b被static修饰,调用完以后不再销毁变量b,b储存运行后的值,第一次运行后为2,第二次为3.。。。
static修饰局部变量,改变了局部变量的生命周期(本质上是改变了变量的存储类型)
②修饰全局变量
static修饰全局变量时,使得这个全局变量只能在该源文件内部使用,不可以再跨文件使用。
第二次操作用static修饰全局变量hehe时,add文件不可以再调用全局变量hehe。
全局变量在其他文件可以使用是因为全局变量具有外部链接属性,被static修饰以后,变成了内部链接属性,不可以再被其他源文件所链接。
③修饰函数与修饰全局变量相似