24小时热门版块排行榜    

Znn3bq.jpeg
汕头大学海洋科学接受调剂
查看: 2134  |  回复: 5
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

学虫dj

金虫 (正式写手)

[求助] FORTRAN中不定个数传递参数 已有2人参与

我知道fortran中的函数在不定个数传递参数时应该使用interface来给子程序设定一个接口,现在的问题是:
1,函数中的形参是不确定大小的数组时,应该怎么设置这个interface
2,这个将要被调用的函数是在一个模块里,而调用他的函数在另一个模块里,这时interface怎么设置
回复此楼

» 猜你喜欢

» 本主题相关价值贴推荐,对您同样有帮助:

穷则独善其事,达则兼济天下
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

学虫dj

金虫 (正式写手)

引用回帖:
2楼: Originally posted by linrn at 2014-04-09 21:13:22
函数中的参数在定义时加上  optional,如
subroutine aaa(a,b,c)
real(kind=8),intent(inout):: a,b
real(kind=8),intent(inout),optional::c
...
end subroutine
在函数中需要使用参数c的时候,需要用logic ...

我的程序中就是这样写的,但是貌似不行。我的程序里面会判断是否给了c,如果没有给,那就自动赋值,但是执行结果是没有地址
穷则独善其事,达则兼济天下
3楼2014-04-11 10:10:09
已阅   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 6 个回答

linrn

至尊木虫 (著名写手)

【答案】应助回帖

感谢参与,应助指数 +1
函数中的参数在定义时加上  optional,如
subroutine aaa(a,b,c)
real(kind=8),intent(inout):: a,b
real(kind=8),intent(inout),optional::c
...
end subroutine
在函数中需要使用参数c的时候,需要用logical present(c)来判别是否输入c这个参数。


调用的时候可以写成
call  aaa(a,b,c)
或者
call aaa(a,b)
2楼2014-04-09 21:13:22
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

btx97

金虫 (小有名气)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
学虫dj: 金币+10 2014-04-16 15:20:28
学虫dj: 回帖置顶 2014-04-16 15:21:24
1. Module里面的所有subprogram在用的时候是不需要interface的。比如在MODULE B中要用module A里的所有子程序,只需要在MODULE B中写上USE A就行了,不需要INTERFACE。因为,一定程度上,可以把MODULE中的子程序当成在所用程序中的后面加了contain的内部子程序。

2. 可选参数为不定大小的数组时可以这样定义子程序。
subroutine aaa(a,b)
      real :: a
      real, optional :: b(
      .....
end
4楼2014-04-11 16:46:38
已阅   关注TA 给TA发消息 送TA红花 TA的回帖

btx97

金虫 (小有名气)

real, optional :: b( : )
5楼2014-04-11 16:47:17
已阅   关注TA 给TA发消息 送TA红花 TA的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考研] 复试调剂 +21 积极向上; 2026-04-10 23/1150 2026-04-15 12:50 by 西北望—风沙
[考研] 291求调剂 +5 关忆北. 2026-04-14 5/250 2026-04-15 09:30 by 逆水乘风
[考研] 材料工程085601,270求调剂 +42 @ASDF1234 2026-04-08 46/2300 2026-04-14 18:12 by 逍遥三郎
[考研] 085600材料与化工329分求调剂 +24 叶zilin 2026-04-13 25/1250 2026-04-14 09:20 by 试管破裂
[考研] 085404 298分求调剂 +11 呼啦呼啦呼呼呼 2026-04-10 12/600 2026-04-14 08:38 by wfj257
[考研] 332求调剂 +15 蕉蕉123 2026-04-10 15/750 2026-04-13 23:12 by pies112
[考研] 一志愿085802 323分求调剂 +13 drizzle_9 2026-04-12 14/700 2026-04-13 10:26 by Faiz5552
[考研] 295分求调剂 +13 ?要上岸? 2026-04-10 13/650 2026-04-12 15:37 by laoshidan
[考研] 电气工程专硕320求调剂 +5 小麻子111 2026-04-10 5/250 2026-04-12 10:47 by zhouyuwinner
[考研] 291求调剂 +8 关忆北. 2026-04-11 8/400 2026-04-12 09:32 by 逆水乘风
[考研] 0860004 求调剂 309分 +9 Yin DY 2026-04-08 9/450 2026-04-11 22:55 by dongdian1
[考研] 调剂 +10 只叙离别辞 2026-04-09 12/600 2026-04-11 20:57 by 逆水乘风
[考研] 343求调剂 +9 王国帅 2026-04-10 9/450 2026-04-11 20:31 by dongdian1
[考研] 调剂求助 +6 果然有我 2026-04-11 7/350 2026-04-11 16:22 by 明月此时有
[考研] 293求调剂 +6 勇远库爱314 2026-04-08 6/300 2026-04-11 10:08 by zhq0425
[考研] 284求调剂 +12 archer.. 2026-04-10 13/650 2026-04-11 08:44 by zhq0425
[考研] 求调剂 +5 不会飞的鱼@ 2026-04-10 5/250 2026-04-10 19:07 by chemisry
[考研] 301求调剂 +5 149. 2026-04-10 5/250 2026-04-10 15:45 by 柴小白
[考研] 求调剂 +11 翩翩一书生 2026-04-09 13/650 2026-04-10 10:27 by liuhuiying09
[考研] 296求调剂 +3 汪!?! 2026-04-08 3/150 2026-04-08 22:00 by zhouyuwinner
信息提示
请填处理意见