c语言中static的用法
时间: 2023-10-13 13:11:30 浏览: 83
在C语言中,`static`关键字有以下几种用法:
1. 静态变量:在函数内部使用`static`修饰的变量称为静态变量。静态变量在程序运行时只会被初始化一次,而且只能在定义它的函数内部访问。例如:
```
void func() {
static int count = 0; // 这是一个静态变量
count++;
printf("count = %d\n", count);
}
int main() {
func(); // 输出 count = 1
func(); // 输出 count = 2
return 0;
}
```
2. 静态函数:在函数声明或定义时使用`static`修饰的函数称为静态函数。静态函数只能在定义它的文件内部访问,无法被其他文件调用。例如:
```
static void func() { // 这是一个静态函数
printf("Hello, world!\n");
}
int main() {
func(); // 编译错误:func未定义
return 0;
}
```
3. 静态全局变量:在全局变量声明时使用`static`修饰的变量称为静态全局变量。静态全局变量只能在定义它的文件内部访问,无法被其他文件访问。例如:
```
static int count = 0; // 这是一个静态全局变量
void func() {
count++;
printf("count = %d\n", count);
}
int main() {
func(); // 输出 count = 1
func(); // 输出 count = 2
return 0;
}
```
阅读全文