問合せ組込み関数 (総称):記憶項目の内部アドレスを返します。この個別関数は実引数として渡すことはできません。
形式
result = LOC (x)
x
(入力) 変数,配列あるいは記録欄引用,手続,または定数。任意のデータ型を使用することができます。これは内部手続または文関数の名前であってはなりません。ポインタである場合,定義されており,指示先に結合されている必要があります。
結果
結果の型は,ia32 プロセッサーでは INTEGER(4),Alpha および ia64 プロセッサーでは INTEGER(8) です。結果の値はデータ・オブジェクトのアドレスか,ポインタの場合には,それに結合された指示先のアドレスを表します。引数が無効である場合,結果は不定となります。
LOC は %LOC ビルトイン関数と同じ機能を果たします。
互換性
CONSOLE STANDARD GRAPHICS QUICKWIN GRAPHICS WINDOWS DLL LIB
例
! 整数ポインタを C 言語に渡す言語が混在したプログラム例 ! Fortran 主プログラム INTERFACE SUBROUTINE Ptr_Sub (p) !DEC$ ATTRIBUTES C, ALIAS:'_Ptr_Sub' :: Ptr_Sub INTEGER p END SUBROUTINE Ptr_Sub END INTERFACE REAL A[10], VAR[10] POINTER (p, VAR) ! VAR はポインタ変数 ! p は整数ポインタ p = LOC(A) CALL Ptr_Sub (p) WRITE(*,*) "A(4) = ", A(4) END /* C 副プログラム */ void Ptr_Sub (int *p) { float a[10]; a[3] = 23.5; *p = a; }