【发布时间】:2011-10-12 17:06:06
【问题描述】:
我是一名理论物理学研究生,从事宇宙学研究。在我的研究过程中,我使用了相当庞大的 Fortran 代码库,并且我使用 C 来满足我的编程需求。
我已经能够在大量测试文件中链接这两个程序,它们运行良好。但对他们来说,我一直在使用目标文件来链接它们。但是当我试图通过 C 运行真正的交易时,包括对 Fortran 头文件的引用。它们似乎可以很好地集成和相互调用,但是 Fortran 头文件的格式与 C 编译器不兼容,因此当它跳转到头文件时,它开始抛出无法理解语法的错误。
例如,Fortran 头文件使用 real*8 定义双变量,因此当 C 读取它们时会抛出错误。文件中的 cmets 也会发生同样的情况。
所以,我想问有没有什么办法可以解决这个问题?即通过 C 使 fortran 格式的头文件可读。
我浏览了互联网,发现了令人困惑的答案,我不知道该遵循哪一个。对此问题的任何帮助将不胜感激:)
【问题讨论】:
-
什么版本的 Fortran?如果是 Fortran 77,你可以使用 f2c。
-
我真的很困惑什么不适合你。在 c 和 fortran 位分别编译后链接目标文件是在单个项目中结合 c 和 fortran 的方式。您在寻找自动标题翻译器吗?
标签: c fortran mixed fortran-iso-c-binding