-
静态局部变量:如果你在函数内部定义一个静态变量,该变量只会初始化一次,而不是每次调用函数时都初始化。这意味着该变量的值在函数调用之间是持久的。
void foo() { static int x = 0; x++; printf("%d\n", x); } 在这个例子中,每次调用foo(),x的值都会增加1。
-
静态全局变量和函数:全局静态变量和函数的作用域局限于声明它们的文件。这意味着,如果你在一个文件中声明了一个全局静态变量或函数,它将无法从其他文件中访问。这有助于封装和隐藏实现细节。
static int x = 0; // 这个变量只能在此文件中访问 static void foo() { // 这个函数只能在此文件中访问 // ... }
- 静态函数:静态函数的作用域局限于声明它们的文件。也就是说,你不能在另一个源文件中调用一个静态函数。这有助于封装和控制函数的可见性,防止函数名冲突。
C语言static关键字
最新推荐文章于 2024-05-18 16:18:30 发布