⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 rstart.for

📁 This Source-Navigator, an IDE for C/C++/Fortran/Java/Tcl/PHP/Python and a host of other languages.
💻 FOR
字号:
      SUBROUTINE RSTART*-----------------------------------------------------------------------**   Processes the routine start**-----------------------------------------------------------------------      include 'param.h'      include 'alcaza.h'      include 'class.h'      include 'flags.h'      include 'cursta.h'      include 'state.h'      include 'treecom.h'      include 'usigno.h'      LOGICAL FLOC*--- reset modify and filter flag      DO 10 I=1,NSTAMM         IMODIF(I)=0   10 CONTINUE*--- only initialize for new routine if really true      IF(.NOT.STATUS(6))  THEN         IF(ACTION(24)) THEN*--- reset counters and flags for c.b. names            STATUS(12)=.FALSE.            STATUS(13)=.FALSE.            NCBNAM=0            NEQNAM=0            NCBVAR=0            DO 20 I=1,MAXGRP               LCBNAM(I)=0   20       CONTINUE            DO 30 I=1,MXNAME               LCBVAR(I)=0   30       CONTINUE         ENDIF         IF(ACTION(29)) THEN*--- reset counters for TREE            NCALLR=0            NCALLD=0            NEXEL=0         ENDIF*--- set flag to re-initialize filters         IFILTR=-1*--- 'print routine header' flag         STATUS(9)=.TRUE.*--- reset SUBROUTINE flag         STATUS(14)=.FALSE.*--- get routine name         DO 40 I=1,NSTAMM            IF (ICLASS(I,1).NE.0) GOTO 50   40    CONTINUE*--- only comments         SCROUT='COMMENTS'         GOTO 60   50    CONTINUE         CALL EXTRAC(I,'PART')         CALL CLASSF*--- find routine name         IF (ISTMDS(14,ICURCL(1)).NE.0)  THEN*--- proper routine header            STATUS(14)=ISTMDS(6,ICURCL(1)).EQ.66            FLOC=ACTION(10)            ACTION(10)=.TRUE.            ISNAME=IRNAME+NRNAME            CALL GETALL            ACTION(10)=FLOC            IF(NSNAME.GT.0)  THEN               SCROUT=SNAMES(ISNAME+1)            ELSEIF(ISTMDS(6,ICURCL(1)).EQ.4)  THEN               SCROUT='BLOCKDAT'            ELSE               SCROUT='NOHEADER'            ENDIF         ELSE            SCROUT='NOHEADER'         ENDIF   60    CONTINUE*--- reset variable type routine         IF (ACTION(20)) CALL SETTYP(0)*--- preset 'routine filtered' flag         STATUS(7)=.TRUE.*--- filter for routine names         IF (ACTION(16)) CALL FILTER(10,7)      ENDIF*--- process only if routine selected      IF (STATUS(7))  THEN*--- classify all statements         DO 70 J=1,NSTAMM            IF (ICLASS(J,1).NE.0)  THEN               CALL EXTRAC(J,'FULL')               CALL CLASSF               ICLASS(J,1)=ICURCL(1)               ICLASS(J,2)=ICURCL(2)            ENDIF   70    CONTINUE*--- prepare re-numbering if requested         IF (ACTION(13)) CALL PRENUM      ENDIF*--- reset variables      KNTDO=0      KNTIF=0      if(action(29)) WRITE(MPUNIT,'(2A)') ' +++ TREE for ',SCROUT      END

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -