大佬教程收集整理的这篇文章主要介绍了制作Fortran DLL并从C#调用它,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
FUNCTION TSAT11(p) C ** IGNORE IMPLEMENTATION ** TSAT11 = SX*TSAT2(X) + SXL1*TSAT3-273.15 RETURN END
在这里,我对fortran一无所知,也没有用C#调用dll,所以请再解释一下.
我正在使用COR_138_11845@paq Visual Fortran和C#2008.
感谢您的时间.
Fortran库包含:
FUNCTION TSAT11(p) !DEC$ATTRIBUTES ALIAS:'TSAT11' :: TSAT11 !DEC$ATTRIBUTES DLLEXPORT :: TSAT11 !DEC$ATTRIBUTES VALUE :: P REAL,INTENT(IN) :: P REAL :: TSAT11 ! Examle calculation TSAT11 = P - 273.15 RETURN END FUNCTION
class Program { [DllImport("calc.dll")] static extern float TSAT11(float p); static void Main(String[] args) { float p = 300f; float t = TSAT11(p); // returns 26.8500061 } }
类似的数组(必须声明大小)
FUNCTION TSAT12(P,N) !DEC$ATTRIBUTES ALIAS:'TSAT12' :: TSAT12 !DEC$ATTRIBUTES DLLEXPORT :: TSAT12 !DEC$ATTRIBUTES VALUE :: N IntegeR,INTENT(IN) :: N REAL,INTENT(IN) :: P(N) REAL :: TSAT12 ! Examle calculation TSAT12 = SQRT( DOT_PRODUCT(P,p) ) RETURN END FUNCTION
class Program { [DllImport("calc.dll")] static extern float TSAT12(float[] P,int n); static void Main(String[] args) { float[] p2=new float[] { 0.5f,1.5f,3.5f }; float t2=TSAT12(p2,p2.Length); //returns 3.84057283 } }
以上是大佬教程为你收集整理的制作Fortran DLL并从C#调用它全部内容,希望文章能够帮你解决制作Fortran DLL并从C#调用它所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。