C++ 符号表和g++;编译程序

C++ 符号表和g++;编译程序,c++,scope,C++,Scope,我感兴趣的是如何实现将适当的名称绑定到编译器内部的指定实体(在我的例子中是g++)。是否存在像符号表这样的东西记录每个名称和相应的实体取决于名称出现的范围?当然,编译器构造符号表是为了确定名称、类型和范围。这取决于输出格式,但这些符号表可以“烧录”到文件中,以便链接器可以解析任何外部引用 例如,当您使用printf()时,编译器对它一无所知,但是链接器可以通过将它与C标准库链接来适当地解析它 这个问题涉及如何以ELF格式(Linux系统上的标准格式)访问该符号表 “是否存在类似符号表的东西…”我

我感兴趣的是如何实现将适当的名称绑定到编译器内部的指定实体(在我的例子中是
g++
)。是否存在像符号表这样的东西记录每个名称和相应的实体取决于名称出现的范围?

当然,编译器构造符号表是为了确定名称、类型和范围。这取决于输出格式,但这些符号表可以“烧录”到文件中,以便链接器可以解析任何外部引用

例如,当您使用
printf()
时,编译器对它一无所知,但是链接器可以通过将它与C标准库链接来适当地解析它


这个问题涉及如何以ELF格式(Linux系统上的标准格式)访问该符号表

“是否存在类似符号表的东西…”我怀疑至少在链接完成时会有类似的东西,是的。$nm-d object.so | less;