@ комментарий paxdiablo является место, я просто немного расширить на нем в тщеславной погоне за респ ...
TYPE(DGRID),TARGET,ALLOCATABLE :: DGRIDS(:)
объявляет массив вещей типа dgrid
. Из этого, а с другой линией, показанной, безусловно, в другом месте в коде есть заявление, о котором
type :: dgrid
...
<type> :: jek
...
end type
является Выделенный фрагмент. Итак, jek
(я так же нечувствителен к случаю, как и сам Fortran) используется как имя элемента типа dgrid
.
Линия
JEK => DGRIDS(IMOD)%JEK
связывает указатель называется jek
с элементом jek
из imod
-го элемента массива dgrids
. Где-то в коде является декларацией, как этот
<type_of_jek>, pointer :: jek
Если CodeBlocks говорит вам, что imod
функция это вас в заблуждение, даже функция без аргументов не будет называться imod()
. imod
должно быть целым числом.
Имя использовано jek
использовано дважды, оно определяет различные вещи. Возможно, пальцы программиста устали печатать DGRIDS(IMOD)%
, и программист напал на идею использования jek
в качестве сокращенного псевдонима для DGRIDS(IMOD)%JEK
. С ультрасовременным компилятором то же самое можно реализовать с помощью инструкции associate
, хотя это не общая замена указателей Fortran, а просто альтернативный механизм определения псевдонимов.
Я не уверен, что 'IMOD' - это функция, представляющая собой синтаксис массива a la' dgrids [imod] 'в C, например. Это также поддерживается 'DGRIDS (:)', который выглядит подозрительно, как массив. – paxdiablo