Ho bisogno di sviluppare una libreria che apra un file e analizzi le cose. Il numero di unità, a causa dello stile IO fortran, deve essere deciso da me, ma non posso sapere quali altre unità sono aperte nel codice client. Esiste una funzione standard come give_me_any_unit_number_that_is_free()
?ottenere il numero di unità gratuito in fortran
9
A
risposta
26
in Fortran 2008, c'è una clausola newunit per aprire che è possibile utilizzare
integer :: myunit
..
open(newunit=myunit,file='file.dat')
...
close(myunit)
ma questo è abbastanza nuovo che non tutti i compilatori supportano ancora. Se il tuo non lo è ancora, puoi prenderne uno su te stesso; c'è un buon esempio su fortran wiki.
10
È possibile utilizzare INQUIRE per trovare un numero di unità che non è in uso:
integer*4 function get_file_unit (lu_max)
!
! get_file_unit returns a unit number that is not in use
integer*4 lu_max, lu, m, iostat
logical opened
!
m = lu_max ; if (m < 1) m = 97
do lu = m,1,-1
inquire (unit=lu, opened=opened, iostat=iostat)
if (iostat.ne.0) cycle
if (.not.opened) exit
end do
!
get_file_unit = lu
return
end function get_file_unit
Problemi correlati
- 1. Unità standard di input e output in Fortran 90?
- 2. Ottenere il modello di unità dalla lettera di unità
- 3. Numero massimo di unità in Windows?
- 4. Google il numero limite di unità di scaricare
- 5. Fortran dimezza il risultato in asterischi: perché?
- 6. Intel Fortran - i limiti di controllo non forniscono il numero di riga
- 7. Come ottenere il numero di display Xvfb
- 8. Ottenere il numero totale di voci enum
- 9. Come ottenere il numero di versione F #?
- 10. Il modo più semplice per ottenere il numero di decimali in un numero in JavaScript
- 11. FORTRAN WRITE()
- 12. Come ottenere il numero di richieste in coda in scrapy?
- 13. Cosa significa "%" in Fortran?
- 14. MySql ottenere il numero di righe
- 15. Ottenere il numero di riga corrente?
- 16. Come ottenere il numero di telefono di Facebook in Android
- 17. Infinity in Fortran
- 18. come generare il numero casuale intero in fortran 90 nell'intervallo [0,5]?
- 19. Confusione sui tipi in FORTRAN
- 20. Copia deep array in Fortran
- 21. software di conversione per fortran 77 a fortran 90
- 22. Ottenere una lettera di unità gratuita
- 23. come ottenere il numero smsc di un telefono in Android?
- 24. Come ottenere il numero di elementi in una casella combinata?
- 25. Ottenere automaticamente il numero di revisione SVN in un programma
- 26. Ottenere il numero di riga in un DataGridView
- 27. Come ottenere il numero di lotti in preparazione?
- 28. Voglio ottenere il numero di settimane in un mese particolare
- 29. Come ottenere il numero di elementi in una struttura?
- 30. Come ottenere il numero di righe utilizzando SqlDataReader in C#