nAG Fortran コンパイラ 7.2 マニュアル

 
ナビゲーション:前へ   上へ   次へ

10.7 入出力 [大部分 5.3]

  • NEWUNIT=指定子がOPEN文に追加されました。 これにより他の論理装置番号と重ならない新しい特別な装置番号(負の値)を割り付けることができるようになりました。
    例)
          INTEGER unit
          OPEN(FILE='output.log',FORM='FORMATTED',NEWUNIT=unit)
          WRITE(unit,*) 'Logfile opened.'
    
    NEWUNIT=指定子はFILE=指定子を指定した場合か、 もしくはSTATUS=指定子に'SCRATCH'を指定した場合にのみ利用可能です。
  • 別の装置に対する再帰入出力は許されています。 例えば
       Write (*,Output_Unit) f(100)
    
    において関数fOutput_Unit以外の装置に対しての入出力が許されています。 例えば値100が範囲外である場合に以下のようにエラーメッセージを出力しても問題はありません。
       Write (*,Error_Unit) 'Error in F:',n,'is out of range'
    
  • [6.0] 副書式はアスタリスク(*)を指定して無限回数の繰り返しが可能です。 例えば
       SUBROUTINE s(x)
         LOGICAL x(:)
         PRINT 1,x
    1    FORMAT('x =',*(:,' ',L1))
       END SUBROUTINE
    
    は配列xの全体をその成分数がいくつであっても一行に表示します。 不定の繰り返し回数は書式指定の最上位レベルでのみ許されていて且つ最後の書式項目である必要があります。
  • [6.0] 編集記述子G0及びG0.dは先頭と末尾のすべての空白を省略して一般化された編集を行います。 例えば
       PRINT 1,1.25,.True.,"Hi !",123456789
    1  FORMAT(*(G0,','))
    
    は以下を出力します。
    1.250000,T,Hi !,123456789,
    

    [7.2] G0.d は Fortran 2008 では Integer, Logical, または Character データの出力に使用することが許可されていませんでしたが、この制限は Fortran 2018 によって取り除かれました。

© 日本ニューメリカルアルゴリズムズグループ株式会社 2025
Privacy Policy  /  Trademarks