non fanno riferimento ad un dispositivo interattivo, e che lo standard
error non sia mai aperto in modalità \textit{fully buffered}.
-Linux, come BSD e SVr4, specifica il comportamento di default in maniera
+Linux, come BSD e SVr4, specifica il comportamento predefinito in maniera
ancora più precisa, e cioè impone che lo standard error sia sempre
\textit{unbuffered} (in modo che i messaggi di errore siano mostrati il più
rapidamente possibile) e che standard input e standard output siano aperti in
\bodydesc{Le funzioni ritornano un puntatore valido in caso di
successo e \macro{NULL} in caso di errore, in tal caso \var{errno}
- viene settata al valore ricevuto dalla funzione sottostante di cui è
+ viene impostata al valore ricevuto dalla funzione sottostante di cui è
fallita l'esecuzione.
Gli errori pertanto possono essere quelli di \code{malloc} per tutte
Nel caso si usi \func{fdopen} i valori specificati da \param{mode} devono
essere compatibili con quelli con cui il file descriptor è stato aperto.
Inoltre i modi \cmd{w} e \cmd{w+} non troncano il file. La posizione nello
-stream viene settata a quella corrente nel file descriptor, e le variabili di
+stream viene impostata a quella corrente nel file descriptor, e le variabili di
errore e di fine del file (vedi \secref{sec:file_io}) sono cancellate. Il file
non viene duplicato e verrà chiuso alla chiusura dello stream.
I nuovi file saranno creati secondo quanto visto in
-\secref{sec:file_ownership} ed avranno i permessi di accesso settati al
+\secref{sec:file_ownership} ed avranno i permessi di accesso impostati al
valore \macro{S\_IRUSR|S\_IWUSR|S\_IRGRP|S\_IWGRP|S\_IROTH|S\_IWOTH}
(pari a \macro{0666}) modificato secondo il valore di \acr{umask} per il
processo (si veda \secref{sec:file_umask}).
Chiude lo stream \param{stream}.
\bodydesc{Restituisce 0 in caso di successo e \macro{EOF} in caso di errore,
- nel qual caso setta \var{errno} a \macro{EBADF} se il file descriptor
+ nel qual caso imposta \var{errno} a \macro{EBADF} se il file descriptor
indicato da \param{stream} non è valido, o uno dei valori specificati
dalla sottostante funzione che è fallita (\func{close}, \func{write} o
\func{fflush}).}
valori diversi.} definito anch'esso nell'header \file{stdlib.h}.
Dato che le funzioni dell'interfaccia degli stream sono funzioni di libreria
-che si appoggiano a delle system call, esse non settano direttamente la
-variabile \var{errno}, che mantiene il valore settato dalla system call che ha
+che si appoggiano a delle system call, esse non impostano direttamente la
+variabile \var{errno}, che mantiene il valore impostato dalla system call che ha
riportato l'errore.
Siccome la condizione di end-of-file è anch'essa segnalata come errore, nasce
il problema di come distinguerla da un errore effettivo; basarsi solo sul
valore di ritorno della funzione e controllare il valore di \var{errno}
-infatti non basta, dato che quest'ultimo potrebbe essere stato settato in una
+infatti non basta, dato che quest'ultimo potrebbe essere stato impostato in una
altra occasione, (si veda \secref{sec:sys_errno} per i dettagli del
funzionamento di \var{errno}).
Controlla il flag di errore di \param{stream}.
\bodydesc{Entrambe le funzioni ritornano un valore diverso da zero se
- i relativi flag sono settati.}
+ i relativi flag sono impostati.}
\end{functions}
\noindent si tenga presente comunque che la lettura di questi flag segnala
soltanto che c'è stato un errore, o che si è raggiunta la fine del file in una
La funzione \func{fread} legge sempre un numero intero di elementi, se
incontra la fine del file l'oggetto letto parzialmente viene scartato
(lo stesso avviene in caso di errore). In questo caso la posizione dello
-stream viene settata alla fine del file (e non a quella corrispondente
+stream viene impostata alla fine del file (e non a quella corrispondente
alla quantità di dati letti).
In caso di errore (o fine del file per \func{fread}) entrambe le
i valori delle variabili, secondo la tecnica spiegata in
\secref{sec:proc_var_passing}).
-Se si passa alla funzione l'indirizzo ad un puntatore settato a
+Se si passa alla funzione l'indirizzo ad un puntatore impostato a
\macro{NULL} e \var{*n} è zero, la funzione provvede da sola
all'allocazione della memoria necessaria a contenere la linea. In tutti
i casi si ottiene dalla funzione un puntatore all'inizio del testo della
\begin{functions}
\headdecl{stdio.h}
- \funcdecl{int fsetpos(FILE *stream, fpos\_t *pos)} Setta la posizione
+ \funcdecl{int fsetpos(FILE *stream, fpos\_t *pos)} Imposta la posizione
corrente nello stream \param{stream} al valore specificato da \param{pos}.
\funcdecl{int fgetpos(FILE *stream, fpos\_t *pos)} Scrive la posizione
Legge il file descriptor sottostante lo stream \param{stream}.
\bodydesc{Restituisce il numero del file descriptor in caso di successo, e
- -1 qualora \param{stream} non sia valido, nel qual caso setta \var{errno}
+ -1 qualora \param{stream} non sia valido, nel qual caso imposta \var{errno}
a \macro{EBADF}.}
\end{prototype}
\noindent ed in questo modo diventa possibile usare direttamente \func{fcntl}.
\begin{prototype}{stdio.h}{int setvbuf(FILE *stream, char *buf, int mode,
size\_t size)}
- Setta la bufferizzazione dello stream \param{stream} nella modalità indicata
- da \param{mode}, usando \param{buf} come buffer di lunghezza \param{size}.
+ Imposta la bufferizzazione dello stream \param{stream} nella modalità
+ indicata da \param{mode}, usando \param{buf} come buffer di lunghezza
+ \param{size}.
\bodydesc{Restituisce zero in caso di successo, ed un valore qualunque in
- caso di errore, nel qual caso \var{errno} viene settata opportunamente.}
+ caso di errore, nel qual caso \var{errno} viene impostata opportunamente.}
\end{prototype}
La funzione permette di controllare tutti gli aspetti della bufferizzazione;
\hline
\end{tabular}
\caption{Valori del parametro \param{mode} di \func{setvbuf}
- per il settaggio delle modalità di bufferizzazione.}
+ per l'impostazione delle modalità di bufferizzazione.}
\label{tab:file_stream_buf_mode}
\end{table}
-Per evitare che \func{setvbuf} setti il buffer basta passare un valore
+Per evitare che \func{setvbuf} imposti il buffer basta passare un valore
\macro{NULL} per \param{buf} e la funzione ignorerà il parametro \param{size}
usando il buffer allocato automaticamente dal sistema. Si potrà comunque
modificare la modalità di bufferizzazione, passando in \param{mode} uno degli
Forza la scrittura di tutti i dati bufferizzati dello stream \param{stream}.
\bodydesc{Restituisce zero in caso di successo, ed \macro{EOF} in caso di
- errore, settando \var{errno} a \macro{EBADF} se \param{stream} non è
+ errore, impostando \var{errno} a \macro{EBADF} se \param{stream} non è
aperto o non è aperto in scrittura, o ad uno degli errori di
\func{write}.}
\end{prototype}
valori \macro{FSETLOCKING\_INTERNAL} o \macro{FSETLOCKING\_BYCALLER}.}
\end{prototype}
-La funzione setta o legge lo stato della modalità di operazione di uno stream
+La funzione imposta o legge lo stato della modalità di operazione di uno stream
nei confronti del locking a seconda del valore specificato con \param{type},
che può essere uno dei seguenti:
\begin{basedescript}{\desclabelwidth{4.0cm}}
\item[\macro{FSETLOCKING\_INTERNAL}] Lo stream userà da ora in poi il blocco
- implicito di default.
+ implicito predefinito.
\item[\macro{FSETLOCKING\_BYCALLER}] Al ritorno della funzione sarà l'utente a
dover gestire da solo il locking dello stream.
\item[\macro{FSETLOCKING\_QUERY}] Restituisce lo stato corrente della modalità