Fortran Coder

查看: 6901|回复: 2
打印 上一主题 下一主题

[子程序] 调用子函数时,虚参循环变量跳跃的问题

[复制链接]

17

帖子

9

主题

0

精华

入门

F 币
104 元
贡献
62 点
跳转到指定楼层
楼主
发表于 2015-3-14 17:54:35 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
如图,这是个relax子函数,st是虚参。程序想要达到的效果是,st=5时,计算循环sv(sv=2)次;然后跳出,判断条件不满足,则st=4再调用relax,计算循环sv(sv=2)次。但是在实际运行中,st=5的时候两次计算没有问题,然后st=4的第一次计算也没有问题,但是当st=4应该计算第二次时,这个st的值莫名其妙的变为了5,导致死循环。我将断点设在了     do j=1,ny(st)-1  这一句前设置了断点,也就是说st=4在计算完第一个循环后就立刻跳为了5。程序中没有语句改变st的值。这是为什么呢?而且为什么st=5时,第一次计算完后没有跳跃成6呢? 急啊,求助。。。。。。。。。

61.png (12.01 KB, 下载次数: 201)

61.png

62.png (11.77 KB, 下载次数: 201)

62.png

63.png (12.77 KB, 下载次数: 237)

63.png

64.png (17.78 KB, 下载次数: 207)

64.png
分享到:  微信微信
收藏收藏 点赞点赞 点踩点踩

835

帖子

2

主题

0

精华

大宗师

F 币
3926 元
贡献
2334 点
沙发
发表于 2015-3-15 10:00:33 | 只看该作者
如果可以,直接贴出代码及数据文件。

954

帖子

0

主题

0

精华

大师

F 币
184 元
贡献
75 点

规矩勋章元老勋章新人勋章水王勋章热心勋章

QQ
板凳
发表于 2015-3-15 12:46:11 | 只看该作者
楼主总喜欢这样,帖代码的片段,然后几个debug的截图。反正我是看不明白
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

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

GMT+8, 2024-11-24 03:23

Powered by Tencent X3.4

© 2013-2024 Tencent

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