比较常见的作用是,定义静态的变量.目的是将此值存入栈内,每一次调用都是使用上次的值.
另一个作用,就是和extern相对应的,static修饰的函数/变量表示只能用在声明范围内的文件里面,而不能被外界引用;
这样也避免了函数定义中命名冲突的情况.
比如,定义 int read();程序肯定会报错,因为read()是库函数;如果定义成 static int read();则不会报错了!
另二者定义的由来:
static 对应 auto; 但是我们平时写程序都会把auto省略的!
const 对应 volatile; 一个存储在寄存器中保持不变,而volatile存储在内存中,每次都是变化的!
本文详细解析了static关键字的作用,包括定义静态变量以及限制函数/变量的作用域。解释了如何通过static避免命名冲突,并对比了static与extern的区别。此外还介绍了static与auto、const与volatile的关系。
1491

被折叠的 条评论
为什么被折叠?



