C 関数の呼び出しを機能させる方法

引き数をサブプログラム呼び出しへ渡す場合、通常の Fortran の規則では、 引き数のアドレスを渡すことになっています。 C 関数の多くは、引き数がアドレスとしてでなく値として渡されることを予期しています。 そのような引き数については、以下のように C の呼び出しの中で引き数 を %VAL (引き数) として指定してください。

  MEMBLK = MALLOC(1024)    ! Wrong, passes the address of the constant
  MEMBLK = MALLOC(N)       ! Wrong, passes the address of the variable
 
  MEMBLK = MALLOC(%VAL(1024)) ! Right, passes the value 1024
  MEMBLK = MALLOC(%VAL(N))    ! Right, passes the value of the variable

詳細については、参照または値による引き数の引き渡しと、「XL Fortran ランゲージ・リファレンス」の 『%VAL および %REF』を参照してください。 IBM Copyright 2003