24小时热门版块排行榜    

查看: 1038  |  回复: 5

wenwuxu

金虫 (初入文坛)

[求助] 陌生的fortran语言,哪位可以指点一二?悬赏100金币

最近在看程序的时候,发现一种陌生的fortran写法,参详许久,知道其用意,但是还无法参透,哪位高人指点一二,不甚感激!
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

【答案】应助回帖


jjdg(金币+1): 感谢参与 2011-11-03 01:29:23
这不是标准的 Fortran 语法……

你要交待一下你的程序的运行平台,以及所使用的编译器。至少我这里的 gfortran 是不认的,提示很多错误……
2楼2011-11-02 13:26:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

【答案】应助回帖

wenwuxu(金币+100): 10 2011-11-02 16:48:29
我猜测,你的程序中定义了 $SPEC,以及 $TYPE 两个特殊的变量,这可能是编译器的扩展,也可能用到了其它的技巧,但不是标准的可移植的特性。我猜你上面的代码等同于下面这段代码:
CODE:
module test
   implicit none

   public :: read_input
   private :: read_input_i4,&
             &read_input_r8,&
             &read_input_r4
   
   integer,parameter :: i4=kind(1)
   integer,parameter :: r4=kind(1.0)
   integer,parameter :: r8=kind(1.0d0)
   
   interface read_input
       module procedure read_input_i4,&
                       &read_input_r8,&
                       &read_input_r4
   end interface
   
   contains
   
   !subroutine read_input_$SPEC(vv,d_vv)
   !   $TYPE :: vv(:), d_vv(:)
   !end subroutine read_input_$SPEC
   
   subroutine read_input_i4(vv,d_vv)
      integer(i4) :: vv(:), d_vv(:)
   end subroutine read_input_i4
   
   subroutine read_input_r8(vv,d_vv)
      real(r8) :: vv(:), d_vv(:)
   end subroutine read_input_r8
   
   subroutine read_input_r4(vv,d_vv)
      real(r4) :: vv(:), d_vv(:)
   end subroutine read_input_r4

end module test

也就是说,这个 module 提供了一个子程序,叫 read_input(vv, d_vv)。在程序中,可以直接 call read_input(vv, d_vv),如果 vv 和 d_vv 是整型变量,那么调用 read_input_i4,如果是双精度数,那么调用 read_input_r8,如果是单精度,那么调用 read_input_r4,呵呵……
3楼2011-11-02 13:47:22
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

wenwuxu

金虫 (初入文坛)

引用回帖:
3楼: Originally posted by snoopyzhao at 2011-11-02 13:47:22:
我猜测,你的程序中定义了 $SPEC,以及 $TYPE 两个特殊的变量,这可能是编译器的扩展,也可能用到了其它的技巧,但不是标准的可移植的特性。我猜你上面的代码等同于下面这段代码:

[code]
module test
   im ...

楼上的跟我理解的差不多,还不是我想要的答案,呵呵
4楼2011-11-02 16:48:06
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

snoopyzhao

至尊木虫 (职业作家)

引用回帖:
4楼: Originally posted by wenwuxu at 2011-11-02 16:48:06:
楼上的跟我理解的差不多,还不是我想要的答案,呵呵

你想要啥答案?$SPEC 和 $TYPE是啥?这个要看你的编译器或者前处理程序的的文档了……因为你没有前文,所以我上面也只是猜测……
5楼2011-11-02 17:05:34
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

fluid00

禁虫 (小有名气)


jjdg(金币+1): 感谢参与 2011-12-09 00:53:49
本帖内容被屏蔽

6楼2011-12-08 18:33:52
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 wenwuxu 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[基金申请] 为什么网上很多人说本周 12号出结果 +4 瞬息宇宙 2026-08-10 4/200 2026-08-11 02:02 by 旁观2020
[基金申请] 基金中了 +15 laoda193707 2026-08-06 15/750 2026-08-11 00:11 by jiafei2190
[基金申请] 确定了,国自然21号放榜 +6 布布和一二 2026-08-10 7/350 2026-08-10 19:15 by 2000zf36392
[基金申请] 综述论文作为代表作会不会影响评审专家的印象分? +10 yufeiwaner 2026-08-09 11/550 2026-08-10 18:47 by yufeiwaner
[基金申请] 静等基金结果 +5 gjjjzhong 2026-08-10 16/800 2026-08-10 17:19 by Tide man
[基金申请] 我的国基提前知道中了,可是同事的操作让我实在接受不了,怎么会有这样的人 +8 家与远方 2026-08-10 11/550 2026-08-10 17:09 by 六两废铜
[基金申请] 关于Filecode分析方法 +3 majunge000 2026-08-10 3/150 2026-08-10 15:46 by lch2012
[基金申请] 国自然结果 +4 Vierhys 2026-08-10 8/400 2026-08-10 15:06 by Vierhys
[基金申请] 应该是93bebmhtak前后十一个字符比较关键 +14 Lanmanbaby 2026-08-09 22/1100 2026-08-10 14:57 by wwncly
[基金申请] 8月时间戳变的,举个手。玩一下,释放压力 +11 archvillain 2026-08-04 13/650 2026-08-10 14:41 by seekfind
[基金申请] 据悉今年马上要出结果了 +7 瞬息宇宙 2026-08-10 8/400 2026-08-10 12:42 by Vivilian
[基金申请] 2026国自然放榜时间 +9 布布和一二 2026-08-08 9/450 2026-08-10 11:22 by xxxx2020
[基金申请] 这样的filecode谁见过 +11 布布和一二 2026-08-08 22/1100 2026-08-10 11:10 by wmfsnow
[基金申请] filecode与中标关系的预测 +5 布布和一二 2026-08-07 5/250 2026-08-09 16:15 by 袁向阳007
[基金申请] 关于豆爷回答的JTJC与%2F数量 +5 yang182083 2026-08-06 7/350 2026-08-08 18:29 by zhanghaozhu
[基金申请] 关于filecode +4 布布和一二 2026-08-07 7/350 2026-08-07 22:55 by zhanghaozhu
[基金申请] filecode +14 等待解的谜 2026-08-06 19/950 2026-08-07 12:20 by wlwhappy
[基金申请] 影响面上的因素 +8 布布和一二 2026-08-05 11/550 2026-08-06 10:41 by 宝贝虫子
[基金申请] 好消息?这个有何含义??? +8 Tide man 2026-08-05 10/500 2026-08-05 16:14 by xmuxiaoyu
[基金申请] 有没有H口的?有收到消息的吗? +3 超级海虾 2026-08-04 3/150 2026-08-04 17:26 by 学教育滴
信息提示
请填处理意见