Мы делаем это там, где я работаю.
Предполагая, что вы используете компилятор Intel Fortran, посмотрите его документы.По умолчанию Intel Fortran передает все по ссылке и (я полагаю) использует соглашение о вызовах C с идентификатором всех заглавных букв.Строки представляют собой особую проблему, поскольку Fortran любит передавать длину как скрытый параметр с настройкой компилятора для того, куда он идет в списке параметров.
Мудрый программист не полагается на значения по умолчанию (где ошибкаможет привести к неопределенному поведению) и будет использовать операторы intel INTERFACE
для указания соглашения о вызовах, передачи параметров и имени ссылки для подпрограммы.Информацию на этой странице (свойства и атрибуты вызовов) необходимо прочитать.В частности, он необходим для понимания тайных правил, когда и где будут передаваться параметры длины строки.У меня есть распечатка, которая хранится у меня на лице.: -)
Еще одна вещь, на которую следует обратить внимание, это то, что версии VisualStudio за 6 не любят смешанные проекты на Фортране и Си.Мы решили эту проблему путем создания пользовательских файлов проекта, обращающихся к makefile, но это PITA.Я бы посоветовал идти по течению и использовать отдельные проекты, если вы не делаете этот лот , как мы.