在C语言中,静态局部变量是指在函数内部定义的变量,但其作用范围仅限于定义它的函数,且在整个程序的执行过程中,该变量的内存空间都存在。静态局部变量使用关键字"static"来进行定义。
静态局部变量的定义格式如下:
static 数据类型 变量名;
以下是一个静态局部变量的示例:
#include <stdio.h>
void function(){
static int count = 0;
count++;
printf("count: %d\n", count);
}
int main(){
function(); // count: 1
function(); // count: 2
function(); // count: 3
return 0;
}
在上述示例中,函数function()
中定义了一个静态局部变量count
,并将其初始值设为0。每次调用function()
时,静态局部变量count
的值都会自增,并通过printf
打印出来。由于静态局部变量的作用范围仅限于函数function()
,所以每次调用function()
时,静态局部变量count
的值都能够保留,不会被重置为初始值。