25.06.2013 Views

Il Linguaggio Fortran 90/95

Il Linguaggio Fortran 90/95

Il Linguaggio Fortran 90/95

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

414 Operazioni di I/O su file<br />

• La clausolaPOSITION=pos stabilisce la posizione del puntatore del file dopo che la connessione<br />

abbia avuto luogo, ossia il punto del file a partire dal quale avrà inizio la successiva<br />

operazione di I/O. I possibili valori per l’espressione stringa pos sono:<br />

– ’REWIND’: <strong>Il</strong> file viene posizionato prima del primo record.<br />

– ’APPEND’: Se il file è connesso con stato ’OLD’, esso è posizionato immediatamente<br />

prima del record endfile se ne esiste uno, altrimenti in coda al file.<br />

– ’ASIS’: Se il file viene creato insieme alla connessione, il suo puntatore viene posizionato<br />

nel punto iniziale del file. Se, invece, il file esiste e risulta già connesso, esso<br />

viene aperto senza che venga modificata la sua posizione. Infine, se il file esiste ma<br />

non risulta già connesso, l’effetto dello specificatore sulla sua posizione non è specificata<br />

dallo standard del linguaggio ma risulta dipendente dal particolare sistema di<br />

elaborazione.<br />

Si noti che lo specificatore POSITION è compatibile soltanto con file connessi ad accesso<br />

sequenziale e che, in sua assenza, il valore assunto di default è ASIS.<br />

• La clausola DELIM=del specifica il tipo di delimitatore utilizzato nelle operazioni di uscita<br />

guidate da lista o con formatoNAMELIST per le costanti di tipoCHARACTER. I possibili valori<br />

per questo specificatore sono:<br />

– ’QUOTE’: Le costanti carattere saranno prodotte in uscita fra singoli apici mentre un<br />

eventuale apice all’interno della stringa sarà riportato raddoppiato.<br />

– ’APOSTROPHE’: Le costanti carattere saranno prodotte in uscita fra doppi apici<br />

mentre un eventuale apice doppio all’interno della stringa sarà riportato raddoppiato.<br />

– ’NONE’: Le costanti stringa saranno prodotte in uscita prive di delimitatori.<br />

Si noti che questo specificatore può comparire soltanto se il file è connesso per operazioni<br />

formattate e che il valore di default è ’NONE’.<br />

• La clausola PAD=pad specifica se un record formattato di input debba essere o meno<br />

”completato” con eventuali spazi vuoti. I possibili valori per la stringa pad sono:<br />

– ’YES’: In questo caso un record in input verrà completato con caratteri blank qualora<br />

la specificazione di formato richieda più dati di quanti ne contenga il record.<br />

– ’NO’: In questo caso un record in input non verrà completato con caratteri blank<br />

per cui il record di input deve contenere un numero di caratteri almeno pari a quello<br />

richiesto dalla lista di input e dalla relativa specificazione di formato.<br />

<strong>Il</strong> valore di default per lo specificatore PAD è ’YES’. Si noti che esso non ha alcun effetto<br />

sulle operazioni di output.<br />

• La clausola RECL=rl , dove rl rappresenta una espressione intera, restituisce la lunghezza<br />

di un record non formattato, espressa in unità che dipendono dal particolare processore,

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!