Fortran Coder

查看: 3100|回复: 3
打印 上一主题 下一主题

[求助] 求助大佬,关于common的用法疑问

[复制链接]

2

帖子

1

主题

0

精华

新人

F 币
14 元
贡献
5 点
跳转到指定楼层
楼主
发表于 2023-2-16 17:31:26 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 zs12033209 于 2023-2-16 20:25 编辑

我用common定义了一些变量,包括数组等,单独放在一个文件里,如common /dddd/ a,b, tot1(nmax,nmax),tot2(nmax,nmax)......, 问题1:这些变量放置的顺序是否与主程序/子程序中对应变量出现的顺序必须一样才能保证变量的值准确或者不报错;问题2:当第一次调用子程序时common里的变量值没问题,运行无误,而第二次从主程序进入子程序时common里的部分变量值变为了0(通过单步调试发现进入子程序前不为0,而进入子程序后变为了0),导致程序无法运行,请问一下有没有解决办法,感谢各位了!!!

ps:不考虑mod.的语法代替common(原始代码太多,庞大了)

分享到:  微信微信
收藏收藏 点赞点赞 点踩点踩

2033

帖子

12

主题

5

精华

论坛跑堂

臭石头雪球

F 币
1641 元
贡献
709 点

美女勋章热心勋章星光勋章新人勋章贡献勋章管理勋章帅哥勋章爱心勋章规矩勋章元老勋章水王勋章

沙发
发表于 2023-2-16 21:09:26 | 只看该作者
1. 是的,顺序,变量类型,精度,必须完全一致。
2. 情况太多了,需要代码调试才能判断问题。

2

帖子

1

主题

0

精华

新人

F 币
14 元
贡献
5 点
板凳
 楼主| 发表于 2023-2-17 09:20:26 | 只看该作者
fcode 发表于 2023-2-16 21:09
1. 是的,顺序,变量类型,精度,必须完全一致。
2. 情况太多了,需要代码调试才能判断问题。 ...

感谢大佬回复,也就是说主程序中变量出现的顺序必须是a,b, tot1(nmax,nmax),tot2(nmax,nmax)......,而以tot1(nmax,nmax),tot2(nmax,nmax),a,b......出现都会使得变量值不对是吗?

2033

帖子

12

主题

5

精华

论坛跑堂

臭石头雪球

F 币
1641 元
贡献
709 点

美女勋章热心勋章星光勋章新人勋章贡献勋章管理勋章帅哥勋章爱心勋章规矩勋章元老勋章水王勋章

地板
发表于 2023-2-17 16:54:57 | 只看该作者
是的,不对。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

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

GMT+8, 2024-12-24 02:33

Powered by Tencent X3.4

© 2013-2024 Tencent

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