为什么我的FORTRAN查询语句中的大小说明符不起作用?

时间:2013-05-07 23:09:46

标签: file-io fortran fortran2003

我正在尝试使用FORTRAN INQUIRE和相对较新的SIZE说明符,并获得一些奇怪的结果。

我的测试代码:

program howbig


integer :: fsize=0
logical  ex

character*64 :: fname='fmtdata'

print *,fsize

open(unit=15,file=fname)
inquire(unit=15,size=fsize, exist=ex)
print *,fsize, ex
close(15)

inquire(file=fname, size=fsize, exist=ex)

print *,fsize, ex

end program

文件'fmtdata'存在且大小为几个字节:

> ls -l fmtdata
-rw-rw-r-- 1 tklim  tklim 6 Jan 28  2011 fmtdata

我与波特兰集团合作:

> pgf90 howbig.f9

以下是一些测试运行的结果:

> ./a.out
            0
            1  T
   -827850024  T
> ./a.out
            0
            1  T
  -1422197528  T
> ./a.out
            0
            1  T
    876874792  T
> ./a.out
            0
            1  T
   -107620360  T

所以,我显然没有得到文件大小,而且每次都没有得到相同的输出。有什么想法发生了什么?我应该说我的转。 pgf90符合fortran 95标准,有一些2003功能可用。我原以为如果这个2003功能不起作用,它就不会编译。感谢。

0 个答案:

没有答案