5

GNU Fortran (GCC) 4.8.2 を使用しています

名前リストから割り当て可能な配列を読み取りたい。しかし、割り当て可能な配列に読み込まなければならない要素の数が事前にわからないため、名前リストを読み取る前に割り当てることはできません。

これは私の名前リストです: namelist.nml:

&SECTION_1
    intList = 5,6,7
&END

これが私のプログラムです: namelist.f08:

program namelist
    implicit none

    integer, allocatable    :: intList(:)
    integer                 :: U    ! Unit to read the namelist file

    namelist /SECTION_1/ intList

    !allocate(intList(3)) ! <-- If I uncomment this, the program works.
    open(NEWUNIT=U, file="namelist.nml", status='OLD', recl=80, delim='APOSTROPHE')
    rewind(U)
    read(U, nml=SECTION_1)
    close(U)

    write (*,*) intList
end program namelist

ラベル付けされた行のコメントを外すと、プログラムは動作しますが、前に述べたように、名前リストを読み取る前に割り当てることができません。これを達成する方法を知っている人はいますか?

4

0 に答える 0