Extended floating-point number

Sample C usage (by Value) Fortran function
#pragma linkage (cfort,FORTRAN)
#include <stdio.h>
long double cfort(long double);
main()
{
  long double x, y;
  x=12.1L;
  y=cfort(x);
  printf
    ("Value returned to C: %Lf\n", y);
}

 
FUNCTION CFORT ( ARG )
REAL*16 CFORT
REAL*16 ARG
PRINT *, 'FORTRAN ARG VALUE:', ARG
CFORT = ARG
END
Sample C usage (by Reference) Fortran function
#pragma linkage (cfort,FORTRAN)
#include <stdio.h>
long double cfort(long double *);
main()
{
  long double x, y;
  x=12.1L;
  y=cfort(&x);
  printf
    ("Value returned to C: %Lf\n", y);
}

 
FUNCTION CFORT ( ARG )
REAL*16 CFORT
REAL*16 ARG
PRINT *, 'FORTRAN ARG VALUE:', ARG
CFORT = ARG
END