私は Fortran コードを持っていますが、それが '77、'90、または '95 のどの標準なのかわかりません。対象となる標準を特定するための標準ツールはありますか?
7632 次
3 に答える
27
おそらく自動化されたツールがありますが、私の方法は主にヒューリスティックです。
- コメントは
!
、行のどこか (F90+) またはC
最初の列 (F77) で使用しますか? - ループは
do
..end do
(F90+) またはdo
..continue
(F77) を使用しますか? &
行末 (F90+) または 6 桁目 (f77) で行を継続しますか?- コードは
module
ortype
構造体 (F90) を使用していますか? - コードが配列を使用している場合、それらを単一の構造体として操作するか (F90)、または常にループを使用するか (F77)?
- 動的メモリ (使用
allocatable
またはpointer
メソッドのいずれか) が使用されていますか (F90)?
一般に、これらは F90 と F77 を区別するのに十分です。Fortran 90 と FORTRAN 77 の違いは、Fortran 90 と Fortran 95 の違いよりもはるかに大きいため、通常はここで終了します。
于 2008-12-24T18:07:40.980 に答える
3
fortran 2003 と 2008 に機能を追加しています (これは頭の片隅にあります)。
プログラムがパラメーター化された派生データ型を持っている場合 (fortran 2003.) 配列コンストラクターが (/ /) の代わりに角括弧 [ ] を使用している場合 (fortran 2003.)
多くのコンパイラは拡張機能の一部として特別な関数 (ベッセル関数など) を持っていますが、これは真の fortran 2008 機能です。
(矛盾があれば編集します)
于 2011-10-04T00:57:24.460 に答える
3
GNU Fortran (gfortran) にアクセスできる場合は、さまざまなオプションを使用してコンパイルし、どれが機能する--std
かを確認できます。方言オプションの詳細については、こちらを参照してください。
于 2008-12-24T17:52:00.873 に答える