Неверная форма ссылки на массив в (1) - PullRequest
0 голосов
/ 06 февраля 2020

Я пытаюсь запустить код, где OUTF - это массив (1: 20,1: 10000)

WRITE(7) iy,imd, xlat,xlon,hx,oar(43,li),XCOR,OUTF(2,li),outf(3,li),
 & OUTF(4,li),OUTF(5,li),OUTF(6,li),OUTF(7,li),OUTF(8,li),outf(9,li),
 & OUTF(10,li),OUTF(11,li)

и получаю ошибку

  & OUTF(10,li),OUTF(11,li)
   1

Как это исправить?

1 Ответ

2 голосов
/ 06 февраля 2020

Строка продолжения в свободной форме Fortran создается с амперсандом (&) в конце строки (амперсанд в начале строки продолжения необязателен - см. Ссылку ) следующим образом:

WRITE(7) iy,imd, xlat,xlon,hx,oar(43,li),XCOR,OUTF(2,li),outf(3,li), &
 & OUTF(4,li),OUTF(5,li),OUTF(6,li),OUTF(7,li),OUTF(8,li),outf(9,li), &
 & OUTF(10,li),OUTF(11,li)

Или вы можете просто написать:

WRITE(7) iy,imd, xlat,xlon,hx,oar(43,li),XCOR,OUTF(2:11,li)

Продолжение не требуется.

...