5

过去我在 C 和 C++ 中使用过 Doxygen,但现在我被 Fortran 项目所吸引,我想快速了解一下该架构。

在过去,我发现逆向工程工具在不存在架构文档的情况下很有用。

那么,有没有一种工具可以对 Fortran 代码进行逆向工程?

我尝试使用 Doxygen,但没有任何运气。我将处理两个不同的项目——一个是 Fortran 90,我认为是 Fortran 77。

感谢您的任何见解和反馈。

4

2 回答 2

3

可能有助于逆向工程的工具:
SciTools 了解
与更多工具的链接(搜索“fortran”)

此外,也许其中一些单元测试框架会有所帮助(我没有使用过它们,所以我无法评论它们的优缺点):
FUnit
FRUIT
Ftnunit
(这些链接链接到 fortranwiki,您可以在其中找到他们每个人的花絮,从那里有指向他们主页的链接)。

于 2009-05-19T04:48:45.627 回答
3

Doxygen 1.6.1 将为自由格式 (F90) 格式的 Fortran 源代码生成文档、调用图等。使用 doxygen 自动记录固定格式 (F77) 代码很不走运。

然而,一切并没有丢失。从固定格式到自由格式的转换很简单,并且可以在很大程度上自动化——将注释字符更改为“!”,将继续字符更改为“&”,并将“&”附加到要继续的行。事实上,如果附加的连续字符放在第 73 列,标准 F77 编译器应该忽略它(仍然只识别第 1 到 72 列中的代码),但 F9x/F2003/F2008 编译器会识别它。这允许将相同的代码识别为固定格式和自由格式,这样您就可以优雅地从一种格式迁移到另一种格式。

方便的是,大约有一千个小程序会在某种程度上进行这种格式调整。实际上,如果您要维护代码,不妨将其从 1928 年的 Hollerith (IBM) 穿孔卡片规范中移开。:)

于 2009-10-16T21:26:26.730 回答