Fortran Coder

标题: 求助Statement function statement cannot occur here [打印本页]

作者: 顺利就好    时间: 2023-9-4 21:05
标题: 求助Statement function statement cannot occur here
各位大佬,求助一下请问报错是什么原因?
程序如下:


DO I=1,27
rZoneheight(I)=ceiling(I,9)*dz
Haverage(I)=rZoneheight(I/9)/2                                                                                                                                                            
END DO


报错结果如下:

E:\noncover-num(4).f90(141):error FOR2588: Statement function statement cannot occur here
E:\noncover-num(4).f90(142):error FOR2588: Statement function statement cannot occur here



作者: 风平老涡    时间: 2023-9-4 23:58
本帖最后由 风平老涡 于 2023-9-5 00:00 编辑

rZoneheight是数组变量,范围是1到27。当I<9, I/9 =0 (整数算术),rZoneheight(I/9)指向rZoneheight(0),超出数组范围。
作者: 楚香饭    时间: 2023-9-5 08:51
rZoneheight 或者 Haverage 没有定义成数组吧,所以编译器误以为
rZoneheight(I)=ceiling(I,9)*dz
是个语句函数(Statement function)
作者: 顺利就好    时间: 2023-9-5 09:58
风平老涡 发表于 2023-9-4 23:58
rZoneheight是数组变量,范围是1到27。当I

好的谢谢大佬,我马上查看一下
作者: 顺利就好    时间: 2023-9-5 09:59
楚香饭 发表于 2023-9-5 08:51
rZoneheight 或者 Haverage 没有定义成数组吧,所以编译器误以为
rZoneheight(I)=ceiling(I,9)*dz
是个语句 ...

好的谢谢大佬,我马上查看一下




欢迎光临 Fortran Coder (http://bbs.fcode.cn/) Powered by Discuz! X3.2