Так же, как форвард, я полный новичок, когда дело доходит до Фортрана.Я потратил некоторое время, рассматривая другие вопросы по SO, но я не смог определить схожий вопрос с этим, поэтому, пожалуйста, прости меня, если мое решение либо очевидно, либо уже получило ответ:)
IЯ пытаюсь узнать, как правильно реализовать самостоятельно написанную библиотеку Fortran DLL в приложении VB.net.Я смог заставить VB распознавать DLL и выполнять функцию без ошибок.Ошибка возникает скорее как ожидаемый результат по сравнению с фактическим выходом.
Моя функция DLL библиотеки Fortran выглядит следующим образом:
function ex(i)
integer*4 i
ex=i+1
return
end
Очень простая функция, которая увеличивает передаваемый параметр на единицу и возвращает значение,(Я думаю).Приложение VB имеет следующий код:
<DllImport("ex.dll")> _
Public Shared Function ex(ByRef val As Integer) As Integer
End Function
Private Sub btn_Fortran_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btn_Fortran.Click
Console.WriteLine(ex(1))
End Sub
Итак, я передаю функции ex целое значение 1. Поэтому я ожидаю, что значение 2 будет записано в консоль.Вместо этого я получаю значение "1073741824" Не совсем равное.Любые идеи, где я явно не хватает?