Styleguide: Difference between revisions
(variante B (mein Favorit)) |
No edit summary |
||
Line 71: | Line 71: | ||
FOO = .FALSE. | FOO = .FALSE. | ||
! | !--------------------------------------------- | ||
!Abschnitt A | |||
!--------------------------------------------- | |||
do i = 1, 10 | do i = 1, 10 | ||
CALL FOOBAR() | CALL FOOBAR() |
Revision as of 05:01, 13 September 2007
Allgemein
- Die Tab-Größe sollte auf 3 Leerzeichen gesetzt sein (siehe Screenshot).
- Schlüsselwörter (z.B.
IF
,FUNCTION
,INTEGER
etc.) sollten in Großbuchstaben geschrieben werden. - Die Schlüsselwörter
END IF
,END DO
etc. sollten wie hier angegeben mit einem Leerzeichen geschrieben werden.
Formatierung
Funktionen sollten folgendermaßen formatiert werden:
- Vorschlag A
<fortran>
CXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX c Funktionsbeschreibung
FUNCTION FOO (BAR) RESULT (LOK)
c .................................................................
USE MODULE INTEGER i LOGICAL LOK character(*) str
c .................................................................
LOK = .FALSE.
c Kommentar
DO i = 1, 10 CALL FOOBAR() IF (.NOT. LOK) GOTO 9999 END DO LOK = .TRUE. GOTO 10000
c ................................................................. c Fehlerbehandlung 9999 IF (.NOT. LOK) ERROR = FEHLER(50, ' ', ' ', 0)
GOTO 10000
c ................................................................. 10000 RETURN
END FUNCTION FOO
cxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
</fortran>
- Vorschlag B
<fortran>
C---------------------------------------------------------------------- C MOD_Beispiel: Ein Modul ! c Anmerkung: blabla C----------------------------------------------------------------------
module MOD_Beispiel use MODULE_BLABLAblabla implicit none integer MemberInt
contains
C---------------------------------------------------------------------- C funktion FOO : Eine unsinnige zu Demonstrationszwecken erstellte virtuelle Fkt c Anmerkung: gibt false zurück wenn Fehler ! C----------------------------------------------------------------------
logical function FOO (BAR) use MODULE_BLABLA
integer i logical LOK character(*) str FOO = .FALSE.
!--------------------------------------------- !Abschnitt A !--------------------------------------------- do i = 1, 10 CALL FOOBAR() !Wenn fehler dann raus ! IF (.NOT. LOK) ERROR = FEHLER(50, ' ', ' ', 0) return end if end do
FOO = .TRUE. return end function FOO
end module MOD_Beispiel
</fortran>
Operatoren in Fortran
in Fortran gibt es zwei Syntaxen für Operatoren <fortran> Operator Relationship .LT. or < Less than .LE. or <= Less than or equal to .EQ. or == Equal to .NE. or /= Not equal to .GT. or > Greater than .GE. or >= Greater than or equal to </fortran>
Für Weiterentwicklungen sollten die gebräuchlichen Symbole benutzt werden: <fortran> < Less than <= Less than or equal to == Equal to /= Not equal to > Greater than >= Greater than or equal to </fortran>