PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Fortran Zeilenumbruch



RAHUL
22-05-2006, 17:52
Hallo,

hier bin ich mal wieder mit einem scheinbar einfachen Anfängerproblem...

Ich habe hier diese Zeile


character(len=20), parameter :: messlatte &
5 & = "....5....|....5....|"
mit ifort kompiliert,
aber der gibt mir folgende Fehlermeldung aus...



fortcom: Error: string_read.f, line 8: Syntax error, found '&' when expectingone of: => = / ( * , <END-OF-STATEMENT> ; [
character(len=20), parameter :: messlatte &
----------------------------------------------------^
fortcom: Error: string_read.f, line 9: Syntax error, found '&' when expectingone of: <LABEL> <END-OF-STATEMENT> ; BLOCK BLOCKDATA PROGRAM TYPE COMPLEX BYTE CHARACTER ...
& = "....5....|....5....|"


Ich habe, weil ich wenig Plan habe, das Ampersand schon hin und hersortiert,
aber nach einigem Suchen im Internet, denke ich das das nicht das Problem ist.

Danke für die Hilfe

Rahul

Andi_Rostock
23-05-2006, 11:32
Fortran 77 hat einen sehr merkwürdigen Aufbau des Source Codes.
Die Spalten müssen exakt eingehalten werden.
Spalten 01 - 05 enthalten Marken
Spalte 06 steht hier ein Zeichen außer 0 oder Leerzeichen, so ist diese Zeile eine Fortsetzungszeile
Spalten 07 - 72 enthalten Anweisungen und Vereinbarungen
Spalten 73 - 80 enthalten Kommentare (Ausnahme: Convex)

Manchmal passiert es, dass dort irgendwie ein Leerzeichen zuviel ist. Also das Fortsetzungszeichen nicht in der 6. Spalte steht. Warum auch immer.
Checke dein Source-File mit vi. Dort ist das Syntax-Highlighting ganz gut. Vielleicht kannst du da etwas erkennen.

Hoffe das hilft,
Andreas

RAHUL
23-05-2006, 14:56
Hallo,

ich muß eigentlich Fortran 77 für mein Projekt lernen
(weil das Program noch so alt ist und in dem Stil weiterprogrammiert wurde),
aber ich habe dem Compiler jetzt einfach die Option -132 mitgegeben
und die Ampersands weggelassen.

Allerdings probiere ich es auch noch mal mit deinem rigiden Spaltencodex...

Danke dafür...

MfG
Rahul