2

私はFORTRAN77のいくつかのモジュールに使用されるいくつかの.hファイルを持っています(私は自分で書いていません)。Fortran 90で新しいルーチンを作成し、そのような.hファイルを使用したいと思います。を使用しようとしましたがinclude 'foo.h'、コンパイルしようとすると(ifortバージョン13.0.0.079ビルド20120731を使用)、次のエラーが発生します。

Syntax error, found IDENTIFIER 'FOO' when expecting one of: ( % [ : . = => C FOO COMMOM

私も使用しようとしましinclude foo.hたが、次のエラーが発生します。 error #5082: Syntax error, found IDENTIFIER 'FOO' when expecting one of: <CHAR_CON_KIND_PARAM> <CHAR_NAM_KIND_PARAM> <CHARACTER_CONSTANT> INCLUDE FOO.h ----------^

error #6274: This statement must not appear in the specification part of a module INCLUDE foo.h --^

error #6236: A specification statement cannot appear in the executable section. !$ use omp_lib ---^

error #6236: A specification statement cannot appear in the executable section. implicit none --^

error #6456: This name must be a RECORD name. [FOO] INCLUDE FOO.h ----------^

error #6460: This is not a field name that is defined in the encompassing structure. [H] INCLUDE foo.h ----------------- ^

error #6252: This format specifier is invalid. [FOO] INCLUDE foo.h

includeF90には存在しないと思います。.hファイルを使用できるようなものはありますか?

4

1 に答える 1

5

自由形式のプログラムと固定形式のインクルード ファイルが混在している可能性があります。両方のファイルを同じ形式にするか、http://fortranwiki.org/fortran/show/Continuation+linesの「交差形式」にする必要があります。

エラーの別の原因は、ファイルの間違った部分で include ステートメントを使用することです。ファイルの内容、つまり実行可能コードに応じて、適切な場所に配置する必要があります。変数と型の定義 (仕様式) または手続きの定義には、すべて適切な場所があります。

于 2013-03-18T15:11:49.237 に答える