C中具有相同名称的多个静态变量
我们可以用C语言声明多个静态变量吗? 如果是,它是如何工作的C中具有相同名称的多个静态变量,c,static-variables,C,Static Variables,我们可以用C语言声明多个静态变量吗? 如果是,它是如何工作的 main() { static int a=1; ptrFun(); a+=1; ptrFun(); printf(" %d \n",a); } void ptrFun() { static int a=2; int b=1; a+=++b; } 我们可以用C语言声明多个静态变量吗?如果是,它是如何工作的 main() { stati
main()
{
static int a=1;
ptrFun();
a+=1;
ptrFun();
printf(" %d \n",a);
}
void ptrFun()
{
static int a=2;
int b=1;
a+=++b;
}
我们可以用C语言声明多个静态变量吗?如果是,它是如何工作的
main()
{
static int a=1;
ptrFun();
a+=1;
ptrFun();
printf(" %d \n",a);
}
void ptrFun()
{
static int a=2;
int b=1;
a+=++b;
}
是的,这很好。它通过编译器将变量名与特定的范围关联而工作。两个名称相同但位于不同函数中的静态函数局部变量并不冲突,因为它们在不同的作用域中定义,并且它们的内存是单独分配的