24小时热门版块排行榜    

查看: 1127  |  回复: 5
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

wenwuxu

金虫 (初入文坛)

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

最近在看程序的时候,发现一种陌生的fortran写法,参详许久,知道其用意,但是还无法参透,哪位高人指点一二,不甚感激!
回复此楼
已阅   回复此楼   关注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的回帖
查看全部 6 个回答

snoopyzhao

至尊木虫 (职业作家)

【答案】应助回帖

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

你要交待一下你的程序的运行平台,以及所使用的编译器。至少我这里的 gfortran 是不认的,提示很多错误……
2楼2011-11-02 13:26:06
已阅   回复此楼   关注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的回帖
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[找工作] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 YXM1FDCSE8Bn 2026-10-31 6/300 2026-11-02 12:51 by n0P4fnsXKbBK
[考博] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +3 hKe7U1kad5Sg 2026-10-31 6/300 2026-11-02 12:25 by n0P4fnsXKbBK
[考博] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 BCdvBAEpt3zm 2026-11-01 4/200 2026-11-02 10:23 by dcc2yOIRGGTT
[找工作] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 YXM1FDCSE8Bn 2026-11-01 6/300 2026-11-02 10:02 by dcc2yOIRGGTT
[论文投稿] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 YXM1FDCSE8Bn 2026-10-31 6/300 2026-11-02 09:36 by dcc2yOIRGGTT
[基金申请] 各位基础老师们,看完中央《从严治党》的决定后,对学术界更加有信心了吧 +3 iaeyuan 2026-11-01 3/150 2026-11-02 07:49 by kudofaye
[博后之家] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +5 1uaZt2kAZj2S 2026-10-31 9/450 2026-11-02 05:54 by xzcv0Tehd8lQ
[考研] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +4 1uaZt2kAZj2S 2026-10-30 21/1050 2026-11-02 05:41 by xzcv0Tehd8lQ
[论文投稿] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +3 hKe7U1kad5Sg 2026-10-31 5/250 2026-11-02 03:39 by xzcv0Tehd8lQ
[硕博家园] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +4 1uaZt2kAZj2S 2026-10-30 16/800 2026-11-02 02:47 by xzcv0Tehd8lQ
[博后之家] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +3 hKe7U1kad5Sg 2026-10-31 5/250 2026-11-01 22:24 by xzcv0Tehd8lQ
[考博] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +3 hKe7U1kad5Sg 2026-10-31 6/300 2026-11-01 22:11 by xzcv0Tehd8lQ
[考博] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +4 xvJS1BYDxvBS 2026-10-31 7/350 2026-11-01 22:01 by xzcv0Tehd8lQ
[公派出国] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +4 1uaZt2kAZj2S 2026-10-30 8/400 2026-11-01 21:35 by xzcv0Tehd8lQ
[公派出国] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +4 1uaZt2kAZj2S 2026-10-30 15/750 2026-11-01 16:52 by BCdvBAEpt3zm
[找工作] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +4 1uaZt2kAZj2S 2026-10-31 8/400 2026-11-01 14:48 by BCdvBAEpt3zm
[考研] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +3 1uaZt2kAZj2S 2026-10-30 16/800 2026-11-01 12:14 by BCdvBAEpt3zm
[硕博家园] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +4 X5bHxOULxFqb 2026-10-30 18/900 2026-11-01 12:11 by BCdvBAEpt3zm
[论文投稿] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +3 1uaZt2kAZj2S 2026-10-31 8/400 2026-11-01 03:59 by YXM1FDCSE8Bn
[考博] 2027博士申请-临床检验诊断学、病原生物学、微生物方向 50+3 yyh@ 2026-10-28 4/200 2026-10-31 12:47 by 可淡不可忘
信息提示
请填处理意见