【发布时间】:2014-07-05 22:28:46
【问题描述】:
我有一个文本文件,同一行有两个数字
108 6.7522
我有一个 fortran 子例程 READCN,它将文本文件中的数字 108 6.7522 存储到变量 NN 和 BOX 中
SUBROUTINE READCN ( CNFILE, BOX )
CHARACTER CNFILE*(*)
REAL BOX
INTEGER CNUNIT
PARAMETER ( CNUNIT = 10 )
INTEGER NN
OPEN ( UNIT = CNUNIT, FILE = CNFILE, STATUS = 'OLD',
: FORM = 'UNFORMATTED' )
READ ( CNUNIT ) NN, BOX
WRITE(*,*) NN, BOX
CLOSE ( UNIT = CNUNIT )
RETURN
END
READCN 变量 NN BOX 的输出是
3.2997999 2.74554597E-31
如何正确读取这些值?
本程序取自http://www.ccl.net/cca/software/SOURCES/FORTRAN/allen-tildesley-book/f.12
当我尝试删除读取命令中的格式选项时,这是我收到的后续错误
At line 686 of file MCNPT.f (unit = 10, file = 'LATTICE-256.txt')
Fortran runtime error: Missing format for FORMATTED data transfer
【问题讨论】:
-
“删除读取命令中的格式选项”是指“删除
open语句中的form='unformatted'”?