爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 10455|回复: 2

[求助] 查找FORTRAN出现run-time error F6700- heap space limit exc...原因

[复制链接]

新浪微博达人勋

发表于 2019-9-4 09:25:02 | 显示全部楼层 |阅读模式
5金钱
我在用FORTRAN分析缺测数据比例的时候,出现run-time error F6700- heap space limit exceeded错误,一直无法发现原因,程序又及其简单,请哪位大虾给予指点,这里不胜感谢!程序清单如下:
PROGRAM Rain10_check_NODATA
               
                CHARACTER(LEN=80)   :: CheckFile
                CHARACTER(LEN=50)   :: str,dir,filename
                INTEGER             :: Ncol,Ecol
                dir = "D:\wuzx\HHR\Check\R2011-2018\"                  !数据文件目录
                !dir = "D:\wuzx\HHR\fortran\3\"
                CheckFile = "NoRainCheck.txt"                                  !结果存储文件
         

                PRINT *,"START......"
               
                CALL system('del '//CheckFile)
                OPEN(40, file=CheckFile,  status='new')

            !CALL system('dir '//dir//'R*.* /b>Lfiles.txt')
                OPEN(10, file="Lfiles.txt", status='old')                   !读文件列表内容,循环处理

                DO WHILE(.TRUE.)
                   Read(10,"(A50)",End=11,Err=11) filename                           !在文件名列表文件中,读数据文件名
                   OPEN(20, file=TRIM(dir)//filename, status='old')
                   print *,        TRIM(dir)//filename
                   Ncol = 0
                   Ecol = 0       
                   DO while(.true.)                                              !读取一行数据,判断是否缺测,“/”表示缺测
                      Read(20,"(A50)",End=22) str
                          Ncol  = Ncol + 1                                  !总行数
              IF(index(str,'/') /= 0) then
                            Ecol = Ecol + 1                                  !缺测行数
                          END IF         
                   END DO
  22           WRITE(40,100) str(1:10),Ncol,Ecol,1.0*Ecol/Ncol
           CLOSE(20)
                ENDDO

  11        CLOSE(10)

  44        CLOSE(40)
  100   FORMAT(1x,A10,"        ",I6,"        ",I6,"        ",f6.4)
            END PROGRAM Rain10_check_NODATA

密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2019-9-4 09:38:20 | 显示全部楼层
用的啥编译器?powerstation?如果是的话换intel、compaq等试试。
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

发表于 2019-9-4 09:43:05 | 显示全部楼层
也可以修改下代码试试,下面是解决方案:There is a known memory leak with the PowerStation product, which is caused by having a string concatenation inside of an IF statement. Assign the string concatenation to a intermediate variable and use that variable in the IF statement instead of the concatenation itself.
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表