Я не нашел на Stack Overflow сообщений, в которых обсуждается вызов C# из Fortran (я также использую Visual Studio 2010 с установленным Intel Visual Fortran). Однако существует (очень) ограниченное количество сообщений[1 , 2, 3], в которых обсуждается вызов C/C++ из фортран.
В одном из ответов на эти сообщения было высказано предположение, что вызов C++ из Fortran сложнее, чем вызов C, что вызвало у меня подозрения, что C# может быть еще сложнее? Не имея основ в C/C++/C#, мне интересно, применимы ли процедуры, изложенные для C/C++, к C#?
Одна общая черта, которую я заметил в этих сообщениях, заключалась в том, что необходим встроенный модуль с именем ISO_C_BINDING. Прочитав немного больше об этом здесь, я не понял, что ISO_C_BINDING позволит мне передать пару 2D-массивов информации в программу (скомпилированную как DLL), написанную на C#, вызвать некоторые «события» (аналогично функциям?) и, наконец, получить 2D-массив информации из C#, прежде чем перейти к моим делам на Фортране.
Если вы знакомы как с Fortran, так и с C#, не могли бы вы сказать мне, подходит ли ISO_C_BINDING для этой задачи? Я не получил этого смысла из информации, которую я перечислил выше. Если у кого-нибудь есть рабочий пример, включающий передачу массивов между C# и Fortran, а также вызов функций C# из Fortran, я был бы очень признателен за возможность просмотреть его в качестве шаблона того, как я мог бы действовать. Спасибо, Эрик
C#
вызовет код C, который вызовет ваш Fortran - person Basile Starynkevitch   schedule 08.04.2013