static
变量类型 |
作用域 | 生存周期 |
全局变量 | 全局 | 全局 |
本地变量 | 本地 | 本地 |
静态本地变量 | 本地 | 全局 |
static可以用作函数和变量的前缀。
对于函数,static的作用仅限于隐藏,其他文件(或函数外)无法访问;
对于变量,static还有下面两个作用:
1.保持变量内容的持久
2.默认初始化为0
注:静态本地变量和全局变量都存储在静态数据区,在静态数据区,如果不做初始化那么内存中所有的字节默认值都是0x00 !!!
还有要注意:尽量避免使用全局变量和静态本地变量,使用这两个变量的函数是线程不安全的。