2016-05-16 19 views
1

Ich möchte eine mehrzeilige Zeichenfolge im Fortran-Code haben. Ich habe versucht, es so zu tun:Fehler: Nicht abgeschlossene Zeichenkonstante beginnend mit (1)

print *, "Line 1& 
    &line 2" 

Aber es gibt mir Syntaxfehler, wenn Sie die Datei kompilieren gfortran myfile.f:

Error: Unterminated character constant beginning at (1)

Wie kann ich mehrzeilige Strings auf saubere Weise haben?

+1

Umbenennen als 'myfile.f90'. – francescalus

+0

Möchten Sie das Zeichenliteral oder die Ausgabe des Programms über zwei Zeilen teilen? –

+0

@AlexanderVogt Obwohl keine Voraussetzung, wäre das auch praktisch! –

Antwort

1

Kann problemlos mit String-Verkettung erfolgen. Beispiel (in einer Freiformdatei .f90):

write(*,'(A)') 'Line 1'//& 
       'line 2'//& 
       'and so forth' 
+1

Das ist nicht falsch, aber es ist völlig unnötig. Es hat die gleiche Wirkung wie das ursprüngliche Fragment von OP, das als freie Quelle kompiliert wurde. –

+0

Fair genug, aber ich mag diesen Weg besser, da es offensichtlich ist, was passiert. Das Original ist einem Neuling (und vielleicht einigen Experten) nicht klar, ob die Leerzeichen oder das '&' Symbol in der zweiten Zeile in der Zeichenfolge enden. –