【发布时间】:2012-04-25 14:22:35
【问题描述】:
我在 Fortran 可执行文件中有一个函数,我需要将其设为 dll 文件,以便可以从 C# 程序调用它的函数
FUNCTION TSAT11(P)
C ** IGNORE IMPLEMENTATION **
TSAT11 = SX*TSAT2(X) + SXL1*TSAT3-273.15
RETURN
END
P 是一个浮点数,函数返回一个浮点数
这里我对fortran一无所知,也不从C#调用dll,所以请多解释一下。
我正在使用 Compaq Visual Fortran 和 C# 2008。
感谢您的宝贵时间。
(喜欢的可以看完整代码Here【这是一个计算水汽性质的程序】)
【问题讨论】:
-
请说明
P是如何定义的,以及函数返回的类型和数组维度。 -
知道如何使用 Fortran 编译器制作 DLL 吗?
-
整个
** IGNORE IMPLEMENTATION **评论没有承认 Fortran/C 语言之间可能存在的多种调用约定差异。如果P是一个字符,您必须承认隐藏长度参数等。 -
我不使用返回值,而是使用
out参数。