Fortran Coder

查看: 130|回复: 4

[求助] 求助Statement function statement cannot occur here

[复制链接]

18

帖子

6

主题

0

精华

入门

F 币
46 元
贡献
42 点
发表于 2023-9-4 21:05:06 | 显示全部楼层 |阅读模式
各位大佬,求助一下请问报错是什么原因?
程序如下:


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


207

帖子

2

主题

0

精华

宗师

F 币
2042 元
贡献
863 点

规矩勋章

发表于 2023-9-4 23:58:56 | 显示全部楼层
本帖最后由 风平老涡 于 2023-9-5 00:00 编辑

rZoneheight是数组变量,范围是1到27。当I<9, I/9 =0 (整数算术),rZoneheight(I/9)指向rZoneheight(0),超出数组范围。

694

帖子

4

主题

0

精华

大师

农村外出务工人员

F 币
541 元
贡献
276 点

新人勋章爱心勋章水王勋章元老勋章热心勋章

发表于 2023-9-5 08:51:37 | 显示全部楼层
rZoneheight 或者 Haverage 没有定义成数组吧,所以编译器误以为
rZoneheight(I)=ceiling(I,9)*dz
是个语句函数(Statement function)

18

帖子

6

主题

0

精华

入门

F 币
46 元
贡献
42 点
 楼主| 发表于 2023-9-5 09:58:00 | 显示全部楼层
风平老涡 发表于 2023-9-4 23:58
rZoneheight是数组变量,范围是1到27。当I

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

18

帖子

6

主题

0

精华

入门

F 币
46 元
贡献
42 点
 楼主| 发表于 2023-9-5 09:59:06 | 显示全部楼层
楚香饭 发表于 2023-9-5 08:51
rZoneheight 或者 Haverage 没有定义成数组吧,所以编译器误以为
rZoneheight(I)=ceiling(I,9)*dz
是个语句 ...

好的谢谢大佬,我马上查看一下
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

捐赠本站|Archiver|关于我们 About Us|小黑屋|Fcode ( 京ICP备18005632-2号 )

GMT+8, 2023-9-22 23:13

Powered by Tencent X3.4

© 2013-2023 Tencent

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