C/Fortran inter-language calling
This section provides some useful troubleshooting information when handling argument passing and return values for Fortran functions or subroutines called from C/C++ code.
In Fortran, arguments are passed by reference. Here, reference means the address of the argument is passed, rather than the argument itself. In C/C++, arguments are passed by value, except for strings and arrays, which are passed by reference.
C/C++ provides some flexibility when solving passing difference with Fortran. Usually, intelligent use of the & and * operators in argument passing enables you to call Fortran from C/C++, and in argument declarations when Fortran is calling C/C++.
Fortran functions which return
COMPLEX data types
require special consideration when called from C/C++ code.