24小时热门版块排行榜    

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

575406210

银虫 (初入文坛)

[求助] 使用全局变量做实参,导致实参与虚参类型不一致

我把我遇到的问题简化一下,大概意思就是(XX是全局变量)
SUBROUTINE   FIELD(MTYPE,GMAX,G,GN,XL,XLN,DEP,EST,PO,DENS,H,S,INV,&
     &  BB,KOUT,KPOINT,RR,TSTIF,STRN,XX,NF,LAYER,NHORZ,NVERT,INPT,DW,&
     &  DT,NOUT,KDISP,TOTFR,NOPT,RATIO,DAMP,KSTRN,NAVAIL,GTYPE,DTYPE,&
     &  KST,ND,U2GMAX,FGG,FLMD,IUSE)
      IMPLICIT REAL*8 (A-H,O-Z)
      DIMENSION XX(*)
      COMPLEX*16 FLMD
      COMPLEX*16 RR,BB,TSTIF,STRN
      COMPLEX*16 OLSTRN
      COMPLEX*16 GSTAR
      COMPLEX*16 ALOAD
      COMPLEX*16 P1,P10
      COMPLEX*16 FGG
      REAL*8 NHORZ,NVERT
      REAL*8 KOUT,KBASE
      REAL*4 TIM1,TIM2
......
  IF (INPTB .NE. NF)   CALL MOTION (XX(K01),XX(K02),XX(K03),XX(K04),XX(K04),XX(K05),&         (调试后显示这一行有两个XX实参与虚参类型不一致)
     &        XX(K06),XX(K07),XX(K08),XX(K09),XX(K10),XX(K11),XX(K12),&
     &        XX(K13),XX(K14),XX(K15),DEP,DEP,KBASE,NBASE,DAMP,BB,INV,&                              (调试后显示这一行有一个XX实参与虚参类型不一致)         
     &        S,MCUT,U2GMAX,NDP,KST,NBBA,KKEY,KKP,NMBR)



SUBROUTINE MOTION (TIME1,DD,W2,ACC,ACCC,ACCMAX,TT,FR,RD,PRV,PAA,
     .   SA,SV,T,FOUAM,AAAC,XORD,YORD,KEYSPC,KOUTP,DAMP,BB,INV,S,
     .   NCUT,U2GMAX,NDP,KST,NBLKCM,KEY,NOUT,NMBR)
     IMPLICIT REAL*8 (A-H,O-Z)
      DIMENSION IDEN(:,
      ALLOCATABLE IDEN
      REAL*8 KEYSPC
      REAL*4 TIM1,TIM2
      COMPLEX*16 ACCC,AAAC,BB,DD                                     (调试后出现的错误是ACCC,BB,DD这三个变量引起的,这里声明的是复型,但是被调用为实参时使用的是全局变量,而全局变量并没有声明类型)
这种问题我该怎么解决呢?请大家帮帮我。谢谢了。
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

575406210

银虫 (初入文坛)

引用回帖:
4楼: Originally posted by 红日520 at 2015-09-05 13:28:51
没有看懂你的问题。实参虚参不是应该声明和调用时保持一致吗?另外还要注意那个implicit

IF (INPTB .NE. NF)   CALL MOTION (XX(K01),XX(K02),XX(K03),XX(K04),XX(K04),XX(K05)这一行中XX(K01),XX(K02),XX(K03),XX(K04),XX(K04),XX(K05)有两个变量和子程序MOTION中的两个虚参类型不一致,并且XX是全局变量(没有声明类型),我现在该怎么改,才能让类型一致?
5楼2015-09-05 14:59:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 14 个回答

575406210

银虫 (初入文坛)

求大婶帮忙看一下,谢谢了
2楼2015-09-04 09:01:02
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

红日520

金虫 (小有名气)

没有看懂你的问题。实参虚参不是应该声明和调用时保持一致吗?另外还要注意那个implicit

发自小木虫Android客户端
4楼2015-09-05 13:28:51
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

红日520

金虫 (小有名气)

看一下全局变量在哪里定义De

发自小木虫Android客户端
6楼2015-09-05 17:08:55
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见