【问题标题】:linux tool to list all functions in a source file?linux工具列出源文件中的所有函数?
【发布时间】:2011-04-17 14:55:50
【问题描述】:

我正在*nix 上寻找一个命令行实用程序,它可以转储文件中定义的所有函数、类等的名称(C/C++/Java)

【问题讨论】:

标签: java c++ c linux utilities


【解决方案1】:

ctags 可以为您提供(以及更多)。它包含在大多数 Linux 发行版中...
http://ctags.sourceforge.net/whatis.html

【讨论】:

  • 我知道 ctags,但它会生成它的标签文件,然后需要将其导入编辑器,例如vim。我要求一个简单的实用程序,它只是在控制台上打印函数名称,如果 ctags 这样做我不确定
  • 那么你想要ctags -x,它会打印出人类可读的内容摘要。
  • ctags -f - 也将输出打印到标准输出,而不是标记文件。然后你可以使用awk 或类似的东西......
【解决方案2】:

不清楚你指的是哪种语言:如果:

  • 编译elf文件然后你有readelf实用程序,提供你编译的带有调试信息“-g”的文件

【讨论】:

    【解决方案3】:

    不确定它是否对您的确切目的有用,但请查看GCC-XML

    【讨论】:

      【解决方案4】:

      您可能还想查看cscope,它类似于已接受答案中建议的 ctags。它创建自己的符号数据库。它为您提供了一个很好的界面,可以在您的项目中搜索给定的符号/包含/文件/声明。

      【讨论】:

        【解决方案5】:

        您可以尝试使用 Doxygen 列出您的所有函数(另请参阅 XML 输出可能性) http://www.doxygen.nl/

        【讨论】:

          猜你喜欢
          • 2023-03-16
          • 2018-09-09
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2016-12-04
          • 1970-01-01
          相关资源
          最近更新 更多