SAVE属性
copyright

green dotSAVE属性

副プログラム内でSAVE属性を指定した変数は、副プログラムを終了しても 内容,割当て状態が保持される。何回も呼び出される副プログラムで 変数の値を保持したい場合に指定する。
[例]
countは、SAVE属性をもち、サブルーチンから戻っても値を保持する。 xの値に10ずつ加算するが4回目以降から加算しない。
    SUBROUTINE sub(x)
       INTEGER,INTENT(INOUT) :: x
       INTEGER,SAVE :: count=0
       count=count+1
       IF (count < 4) x=x+10
    END SUBROUTINE sub
line-end