Having considered an example of using the macros to write a C function that is to be called from FORTRAN, let us look at all of the macros in more details. You will notice that some of the macros are prefixed by F77 while others are not. Those that do not have the F77 prefix are those that occur in standard places in the source code and so are unlikely to be confused with other macros. The macros that do have the F77 prefix are those that declare a C function and others that are less commonly used, and when they are, they can occur anywhere within the body of the C routine. A full description of each macro is available.
The whole ethos of the F77 macros is to try to isolate the FORTRAN/C
interface to the beginning of the C function. Within the body of the C
function, the programmer should not need to be aware of the fact that this
function is designed to be called from FORTRAN. It is not possible to achieve
this completely and at the same time retain portability of code, but the
intention is there none the less.
CNF and F77 Mixed Language Programming -- FORTRAN and C