Fortran Coder

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

[子程序] 如何接受传递过来的常量值

[复制链接]

2

帖子

2

主题

0

精华

新人

F 币
16 元
贡献
8 点
跳转到指定楼层
楼主
发表于 2019-11-28 12:55:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
这是主程序
[Fortran] 纯文本查看 复制代码
program Console1
implicit  none
Integer,parameter::nm=100
call   start(nm)
end
!这是子例行程序
SUBROUTINE start(nm)
     implicit  real*8 ( a-h,o-z )
      integer*4       tv0001
common/area1/x0(nm)
    end

现在的问题是在子例行程序中怎么接受nm这个常量值,然后赋值给common中这个x0数组

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

250

帖子

2

主题

0

精华

宗师

F 币
1731 元
贡献
872 点

规矩勋章

沙发
发表于 2019-11-28 14:40:49 | 只看该作者
既然nm是常数,在子程序重新定义一下不就行了?如果很多地方都用也可以单独生成一个include文件共同引用

835

帖子

2

主题

0

精华

大宗师

F 币
3926 元
贡献
2334 点
板凳
发表于 2019-11-28 15:57:28 | 只看该作者
[Fortran] 纯文本查看 复制代码
SUBROUTINE start(nm)
     implicit  real*8 ( a-h,o-z )
      integer*4       nm

    common/area1/x0(nm)
x0=nm
    end

2033

帖子

12

主题

5

精华

论坛跑堂

臭石头雪球

F 币
1643 元
贡献
709 点

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

地板
发表于 2019-11-29 09:28:45 | 只看该作者
都什么年代了,还用 common
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

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

GMT+8, 2024-12-28 06:34

Powered by Tencent X3.4

© 2013-2024 Tencent

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