标签: c compilation symbols
为什么符号表中的局部静态变量的名称中添加了一个数字?
int main(void) { static stat_var = 20; return 0; }
8:0000000000000008 4 OBJECT LOCAL DEFAULT 2 stat_var .1604
答案 0 :(得分:5)
可以有许多具有相同名称的本地静态变量(跨不同的函数)。编译器给它们消除歧义的后缀,以避免潜在的名称冲突。