Fortran コードがあり、Fortran エディター (Force 2.0.9) がそのコードの次の行を理解できません。
real(kr8) :: rnum
このタイプの変数の宣言については何も見つかりませんでした。(kr8) とはどういう意味ですか? 誰かが私にそれを説明できるかどうか本当に感謝していますか?
これは次の略です。
real(kind=kr8) :: rnum
この場合、変数またはパラメーターkr8
は、コード内の別の場所 (同じプロシージャー内の場合はこの行の上) で指定され、モジュールを介してアクセスされる場合は別のファイル内で指定されます。kr8
その名前から、が特定のコンパイラ用の倍精度浮動小数点数 (サイズは 8 バイト) のような形で定義されていると推測できます。
kind
整数変数と実数変数のさまざまな精度と範囲に対してパラメーターが取り得る値については、Fortran コンパイラーのドキュメントを参照してください。force を使用している場合、コンパイラは gfortran、g95、または g77 のいずれかです。このkind
パラメーターは Fortran 90 に導入された機能であり、コンパイラーが g77 の場合、このパラメーターを使用してコンパイルできない可能性があります。
このSO質問への回答も読むのに役立ちます: Fortran 90 kind parameter .
Fortran >=90 で変数を宣言するいくつかの方法についての以前の回答は次のとおりです: Fortran: integer*4 vs integer(4) vs integer(kind=4)。これが実変数でどのように機能するかについては、拡張倍精度も参照してください。