X-Git-Url: https://gapil.gnulinux.it/gitweb/?p=gapil.git;a=blobdiff_plain;f=filestd.tex;h=78a524cee948dfd9f87b661370e5e019454e8ba1;hp=a3e719f691f9224f56cbf243b1d69dda3d1d2c07;hb=6408f44e3fcb3a4931ce5faf9706faf86fc22caa;hpb=c00fca809a709ea67ab3dfdede3a83ead0a9fcaf diff --git a/filestd.tex b/filestd.tex index a3e719f..78a524c 100644 --- a/filestd.tex +++ b/filestd.tex @@ -222,10 +222,9 @@ Le funzioni che si possono usare per aprire uno stream sono solo tre: Apre il file specificato da \param{path} associandolo allo stream specificato da \param{stream}, se questo è già aperto prima lo chiude. - \bodydesc{Le funzioni ritornano un puntatore valido in caso di - successo e \macro{NULL} in caso di errore, in tal caso \var{errno} - viene impostata al valore ricevuto dalla funzione sottostante di cui è - fallita l'esecuzione. + \bodydesc{Le funzioni ritornano un puntatore valido in caso di successo e + \macro{NULL} in caso di errore, in tal caso \var{errno} assumerà il valore + ricevuto dalla funzione sottostante di cui è fallita l'esecuzione. Gli errori pertanto possono essere quelli di \code{malloc} per tutte e tre le funzioni, quelli \func{open} per \func{fopen}, quelli di @@ -402,14 +401,14 @@ intero (di tipo \ctyp{int}) \macro{EOF}\footnote{la costante deve essere Dato che le funzioni dell'interfaccia degli stream sono funzioni di libreria 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. +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 impostato in una -altra occasione, (si veda \secref{sec:sys_errno} per i dettagli del +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}). Per questo motivo tutte le implementazioni delle librerie standard @@ -583,9 +582,9 @@ rispettivi prototipi sono: \funcdecl{int getc(FILE *stream)} Legge un byte da \param{stream} e lo restituisce come intero. In genere è implementata come una macro. - + \funcdecl{int fgetc(FILE *stream)} Legge un byte da \param{stream} e lo - restituisce come intero. È una sempre una funzione. + restituisce come intero. È sempre una funzione. \funcdecl{int getchar(void)} Equivalente a \code{getc(stdin)}. @@ -1326,8 +1325,8 @@ della funzione 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 imposta \var{errno} - a \macro{EBADF}.} + -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}.