一)static
1)作用于变量:声明局部变量时,将改变变量的存储方式即生命期,使变量成为静态局部变量,编译时就为变量分配内存,知道程序退出才释放存储单元。局部变量可以记忆上次的数据。声明外部变量的时候,编译时分配内存,程序结束时释放内存单元。
2)作用于函数:对函数的连接方式产生影响,使得函数只在本文件内部有效,对其他文件是不可见的。这样的函数又叫做静态函数。使用静态函数是对函数的一种保护机制,不用担心其他文件的同名函数产生干扰。
二)const
1)作用变量:const修饰的变量值是不可变的,readonly。
2)修饰外部:编译时会分配内存,并且可以不进行初始化。可以不进行初始化,仅仅作为声明。