如何从C头文件中准备fortran模块?

时间:2016-06-07 07:52:05

标签: c fortran fortran-iso-c-binding

我有这个纯C文件,有6个函数,我想为fortran程序员提供:

http://tinyfiledialogs.sourceforge.net

C to Fortran“导入”可以工作吗?

我应该简单地准备类似Fortran头文件吗?

我意识到我的C代码使用了几个Unix或Windows C头文件,这会使转换复杂化。但是,必须能够实现为6 C函数提供等效的Fortran头。

char const * tinyfd_inputBox (
    char const * const aTitle ,
    char const * const aMessage ,
    char const * const aDefaultInput ) ; 
   // the returned value is a static array

编辑:我开始意识到模块实际上是依赖于编译器的。 也许我应该准备一个makefile来生成C对象文件和fortran模块来使用它。

1 个答案:

答案 0 :(得分:1)

如果您的目标是让fortran程序员轻松生活并帮助他们直接在程序中使用您的C代码,那么您可能希望了解生成提供接口的fortran模块。这些与您的示例标题有些相似,因为它们定义了例程类型和所需的输入和输出。

我对此并不是特别有经验所以我不会在这里举一个具体的例子,但我会把你推荐给this site。另一个有用的信息来源是查看其他包如何执行此操作,例如netcdfPETSc