問合せ組込み関数 (総称):省略可能仮引数が存在する (実引数が結合されている) かどうかを返します。
形式
result = PRESENT (a)
a
(入力) 現在の手続の省略可能引数。
結果
結果の型は基本論理型のスカラです。結果は,a が存在する場合には .TRUE.,存在しない場合には .FALSE. です。
互換性
CONSOLE STANDARD GRAPHICS QUICKWIN GRAPHICS WINDOWS DLL LIB
関連情報
例
次に例を示します。
SUBROUTINE CHECK (X, Y) REAL X, Z REAL, OPTIONAL :: Y ... IF (PRESENT (Y)) THEN Z = Y ELSE Z = X * 2 END IF END ... CALL CHECK (15.0, 12.0) ! Z に 12.0 が設定されます。 CALL CHECK (15.0) ! Z に 30.0 が設定されます。
以下に他の例を示します。
CALL who( 1, 2 ) ! "A present" "B present" を出力します。 CALL who( 1 ) ! "A present" を出力します。 CALL who( b = 2 ) ! "B present" を出力します。 CALL who( ) ! 何も出力しません。 CONTAINS SUBROUTINE who( a, b ) INTEGER(4), OPTIONAL :: a, b IF (PRESENT(a)) PRINT *,'A present' IF (PRESENT(b)) PRINT *,'B present' END SUBROUTINE who END