一、修饰变量
1. static变量和普通变量的作用域不同。static 定义全局变量时,只在当前文件中有效。比如我们在a.c中定义变量int a; 在b.c文件中定义extern int a;这时候a变量是一个全局变量,a.c和b.c中都能访问。但是如果a.c中定义了static int a; 那么即使b.c中extern 外部声明也不可以。
2. static变量修饰变量的时候,static修饰的静态局部变量只执行一次,而且延长了局部变量的生命周期,直到程序运行结束以后才释放。如果函数中定义一个变量不想在函数结束被释放的时候,可以使用static修饰。
3. static修饰的局部变量有自动初始化的功能。比如int类型自动初始化为0,char字符自动初始化成\0。
二、修饰函数
1. static修饰一个函数,则这个函数的只能在本文件中调用,不能被其他文件调用。
C语言中static的作用
最新推荐文章于 2025-03-28 16:44:14 发布