c++ - 提取 C/C++ 函数原型(prototype)

标签 c++ c function-prototypes

我想这样做:

extract_prototypes file1.c file2.cpp file3.c

并让任何脚本/程序为给定的 C/C++ 文件中定义的所有函数打印一个很好的函数原型(prototype)列表。它必须很好地处理多行声明。

有没有可以完成这项工作的程序?越简单越好。

编辑:在尝试编译两个 C 程序后,使用 {perl, python, ruby​​} 的东西的奖励积分。

最佳答案

我使用 ctags

# p = function declaration, f = function definition
ctags -x --c-kinds=fp /usr/include/hal/libhal.h

也适用于 C++

ctags -x --c++-kinds=pf --language-force=c++ /usr/include/c++/4.4.1/bits/deque.tcc

注意,您可能需要添加包含路径,请使用 -I/path/to/includes

关于c++ - 提取 C/C++ 函数原型(prototype),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1570917/

相关文章:

c - 你如何构造一个 C makefile 以便它编译 source.c 文件?

c - 在C中按结构排序数组

c++ - 通过引用接收 lambda 作为参数的正确方法

c++ - 当您声明 "pointer type"形式(函数)参数 "like an const array"时,const 是什么?

c++ - 在 Windows 上为 MinGW 编译的 C++ 程序是否适用于 Linux 上的 GNU 编译器?

c++ - 串行端口 : Read data problem, 未读取完整数据

c++ - 数据不变时避免重新计算

c++ - NodeJS Nan C++ 将嵌套对象绑定(bind)到插件实例

c - C 中的 tcp 客户端/服务器中带有线程的字符串

c++ - 根据需求在 C++ 中定义函数原型(prototype)