Fortran Coder

查看: 9303|回复: 8
打印 上一主题 下一主题

[子程序] 子程序传入传出参数问题,求大佬帮助

[复制链接]

1963

帖子

12

主题

5

精华

论坛跑堂

臭石头雪球

F 币
1357 元
贡献
574 点

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

楼主
发表于 2019-8-15 08:32:59 | 显示全部楼层
推荐阅读:http://passarray.w.fcode.cn/
    Integer,Parameter::Numt=7.0         !时间迭代总次数/min
    Integer,Parameter::NumL=6.0         !管长迭代总次数/节
    Integer,Parameter::Numx=5.0         !翅片宽度方向迭代总次数/节
Real::Two(0:numx,0:NumL,0:Numt)
Real Htair(numx,NumL,Numt)
子程序里也这样定义。
你的 k , j , i 是循环变量,并不是数组的大小。
你确定你的子程序中 Real Aair(k,j,i) 这些数组,是用循环变量作为大小的吗?
那么第一次循环,将会是 Real Aair(1,1,1) 大小是1*1*1 的

1963

帖子

12

主题

5

精华

论坛跑堂

臭石头雪球

F 币
1357 元
贡献
574 点

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

沙发
发表于 2019-8-18 08:33:27 | 显示全部楼层
问题:
1. 需要传入 i,j,k 的值
call Get_Htair(Tair,Two,Htairx,k,j,i)
Subroutine Get_Htair(Tair,Two,Htairx,k,j,i)
2. 无需interface,去掉。(如果你用的假定形状,那么需要interface,但是你用的是固定大小数组)
您需要登录后才可以回帖 登录 | 极速注册

本版积分规则

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

GMT+8, 2024-5-2 12:44

Powered by Tencent X3.4

© 2013-2024 Tencent

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