相关疑难解决方法(0)

每次调用父函数时,是否重新分配C中的静态变量?

假设我在C中的函数内声明了一个静态变量.

如果我多次调用该函数,那么每次调用函数时是否会在内存中重新分配静态变量?

如果确实重新分配,为什么始终保持最后一个值?

例:

void add()
{
    static int x = 1;
    x++;
    printf("%d\n",x);
}

int main()
{
    add(); // return 2
    add(); // return 3
    add(); // return 4
}
Run Code Online (Sandbox Code Playgroud)

c variables static

0
推荐指数
1
解决办法
2573
查看次数

标签 统计

c ×1

static ×1

variables ×1