从C调用fortran代码#
问题描述:
有很多FORTRAN 77编写的代码。我想用c#开始使用该代码开发。我该怎么办?从C调用fortran代码#
- 导入FORTRAN的DLL到托管代码
- 转换代码
对于每一个选项,你能告诉我该怎么做。第一个是否有任何性能问题?
谢谢。
答
见http://msdn.microsoft.com/en-us/library/26thfadc.aspx。我会选择1.在大多数情况下,假设您使用Fortran进行数字运算,它将会减少工作量并产生更好的性能。
答
如果您有很多非托管代码,而您没有时间迁移,则选项1很不错。如果你走这条路线,确保尽可能少地调用非托管方法,即使这些调用涉及发送更大的参数/结果,因为托管/非托管世界之间的编组可能会损害性能。
选项2没问题,您最终会将所有内容都转换为托管代码。假设这段代码编写得当,它的执行速度至少与非托管代码一样快。
答
有商业的Fortran .NET编译
哇,这可能是有用的,我在哪里可以找到它? – 2011-06-08 22:26:48
http://www.lahey.com/lf71/lf71.htm我怀疑$$$虽然 – pm100 2011-06-08 22:56:50