4

为什么符号表中的局部静态变量的名字后面要加一个数字?

int main(void) {
    static stat_var = 20;

    return 0;
}

8:0000000000000008 4 对象本地默认值 2 stat_var .1604

4

1 回答 1

6

可以有许多同名的局部静态变量(跨不同的函数)。编译器为它们提供了消除歧义的后缀以避免潜在的名称冲突。

于 2013-02-16T05:27:16.003 回答