头文件C / C ++中的符号

时间:2014-04-14 16:02:25

标签: c++ c gcc g++ header-files

如何找到源文件在头文件中引用的符号?
我想以编程方式找出答案。

1 个答案:

答案 0 :(得分:3)

蛮力方法:

  1. 在源文件中,注释掉包含头文件。
  2. 重新编译源文件。
  3. 编译器应该发出未定义符号的列表。

    如果头文件包含其他文件,则可能需要递归应用。

    编辑1:映射文件
    您的编译器可能能够生成符号的交叉引用列表以及它们的使用位置。这是每个编译器特有的。请参阅编译器的文档。

    同时检查链接器的文档。

    编译器可以生成 map 文件,该文件显示符号,值及其位置。这可能会显示symobls的使用位置,但很可能不会出现在头文件中。