Ho una domanda su Fortran 77 e non sono riuscito a trovare una soluzione.Array of Strings in Fortran 77
Sto cercando di memorizzare un array di stringhe definite come segue:
character matname(255)*255
Quale è una matrice di 255 stringhe di lunghezza 255.
Più tardi ho letto l'elenco dei nomi da un di file e ho impostato il contenuto della matrice in questo modo:
matname(matcount) = mname
EDIT: in realtàmname
valore è harcoded come mname = 'AIR'
di tipo character*255
, è un parametro di una funzione matadd()
che esegue la riga precedente. Ma questo è solo per il test, in futuro verrà letto da un file.
Più tardi voglio stampare con:
write(*,*) matname(matidx)
ma sembra per stampare tutti i 255 caratteri, si stampa la stringa ho assegnato e un sacco di immondizia.
- Quindi questa è la mia domanda, come posso sapere la lunghezza della stringa memorizzata?
- Devo avere un altro array con tutte le lunghezze?
- E come posso sapere che la lunghezza della stringa è stata letta?
Grazie.
+1 - Fortran? sei serio? –
@ Ian - Perché no? – Rook