Soppressione delle interruzioni di riga nelle istruzioni di scrittura di Fortran 95
-
20-08-2019 - |
Domanda
Vorrei scrivere sullo standard output in fortran senza aggiungere un'interruzione di riga. Cioè, voglio fare qualcosa del genere:
a='some string and '
b='some other string'
write(*,101) a
...
write(*,102) b
...
101 format(a,...)
102 format(a)
È possibile utilizzare una sorta di istruzione format per sopprimere l'interruzione di riga in 101, in modo che il codice restituisca " una stringa e un'altra stringa " sulla stessa linea di output?
Nota che è importante che le due istruzioni di scrittura siano separate, poiché il codice in mezzo viene effettivamente utilizzato per generare la seconda stringa.
Soluzione
Puoi usare l'opzione advance='no'
:
a='some string and '
b='some other string'
write(*,101,advance='no') a
...
write(*,102) b
...
101 format(a)
102 format(a)
Questo eliminerà l'interruzione di linea.
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow