我们可以在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;
}
答案 0 :(得分:0)
我们可以在C中如下声明多个静态变量吗?如果是,它如何工作?
是的,这很好。它通过编译器将变量名称与特定的作用域相关联来工作。名称相同但功能不同的两个静态函数局部变量不会冲突,因为它们在不同的作用域中定义,并且它们的内存是分别分配的。