2
我有以下FORTRAN:如何使用CHARACTER * 50類型的參數將參數從C#傳遞給FORTRAN?
SUBROUTINE MYSUB(MYPARAM)
!DEC$ ATTRIBUTES DLLEXPORT::SetPaths
CHARACTER*50 MYPARAM
WRITE(6, *) MYPARAM
END SUBROUTINE
然後,我有以下的C#
class Program
{
static void Main(string[] args)
{
StringBuilder sb = new StringBuilder(50);
sb.Append(@"something");
MYSUB(sb);
Console.ReadLine();
}
[DllImport(@"myCode.dll", EntryPoint = "MYSUB")]
public static extern void MYSUB(StringBuilder input);
}
然而,在我的FORTRAN WRITE顯示了在一堆垃圾的 「東西」。看起來像字符串終結者沒有被尊重。幫幫我!