【发布时间】:2016-12-15 13:29:32
【问题描述】:
静态变量存储在程序的数据段中,而自动变量存储在堆栈段中。 假设我编写如下代码。
#include <stdio.h>
void temp();
int main()
{
static int a=10;
temp();
return 0;
}
void temp()
{
static int a=20;
}
在 2 个函数中定义了相同的静态变量名称。在数据段布局中将有 2 个具有相同名称的变量。 这不会在编译/执行时造成混乱吗?目前如何避免这种情况?
【问题讨论】:
标签: c static compiler-construction initialization