データ型と宣言文一覧
| 宣言文 | データ型 | メモリ領域 | 有効数字 | 対応するC言語のデータ型 |
| LOGICAL | 論理型 | 4bytes | ||
| INTEGER | 整数型 | 2bytes | int | |
| INTEGER*4 | 整数型 | 4bytes | long | |
| REAL*4 | 単精度実数型 | 4bytes | 7桁 | float |
| REAL*8 | 倍精度実数型 | 8bytes | 15桁 | double |
| REAL*16 | 倍々精度実数型 | 16bytes | long double*1 | |
| COMPLEX*4 | 単精度複素数型 | 4bytes | ||
| COMPLEX*8 | 倍精度複素数型 | 8bytes | ||
| CHARACTER | 文字型 | 長さによる |
単精度実数型と倍精度実数型
何も指定しない場合は単精度実数型(REAL*4)が使用される。
プログラム中の定数値についても同様である。
プログラム中の定数値が倍精度実数型であることを示すには、数値の最後にd0を付加する。
例:プログラム中の定数値
1.2 ! 単精度実数型として認識される。 1.2d0 ! 倍精度実数型として認識される。
CHARACTER宣言文
CHARACTER*nでn文字の文字型変数を定義する。
例:10文字の文字型変数strを作成する。
CHARACTER*10 str
配列の宣言
配列の宣言には2通りの方法がある。
割付配列については、Fortran/allocatableを参照のこと。
何も指定しない場合、Fortranの配列は1から始まる。
- 通常の宣言文で行う場合(推奨)
REAL*4 :: a(10)
- DIMENSION文を使用する場合
この場合のデータ型は暗黙の型宣言(IMPLICITの項参照)に従う。REAL*4, DIMENSION :: a(10)
多次元配列の場合はコンマでつなぐ。
REAL*4 :: a(10,2) REAL*4, DIMENSION :: a(10,2)
配列の添え字の範囲を指定したい場合は、(n:m)という風に宣言する。
例:単精度実数型aの添え字を0~100にする。
REAL*4 a(0:100)
SAVE
EQUIVALENCE
COMMON(非推奨)
サブルーチン、外部関数間でのデータの共有を行う。
fortran90の場合はMODULEの使用が推奨される。
例:親プログラムparentのx,yと、子プログラムchildのx,yを共有する。
program parent
real*4 x,y ----------------- program child
real*4 x,y common x,y