From: Simone Piccardi Date: Fri, 14 Sep 2001 17:22:25 +0000 (+0000) Subject: Correzioni minime X-Git-Url: https://gapil.gnulinux.it/gitweb/?a=commitdiff_plain;h=0697eab692e2d8e66f736e5be01648198aa83332;p=gapil.git Correzioni minime --- diff --git a/intro.tex b/intro.tex index 9ae1f14..d88d6a7 100644 --- a/intro.tex +++ b/intro.tex @@ -353,9 +353,9 @@ altre al suo interno che falliscono, modificando cos Pertanto un valore non nullo di \var{errno} non è sintomo di errore (potrebbe essere il risultato di un errore precedente) e non lo si può usare per -determinare \textsl{quando} una chiamata a funzione è fallita. La procedura -da seguire è sempre quella di controllare \var{errno} immediatamente dopo aver -verificato il fallimento della funzione dal suo codice di ritorno. +determinare quando o se una chiamata a funzione è fallita. La procedura da +seguire è sempre quella di controllare \var{errno} immediatamente dopo aver +verificato il fallimento della funzione attraverso il suo codice di ritorno. \subsection{Le funzioni \func{strerror} e \func{perror}} @@ -372,12 +372,10 @@ prima funzione che si pu \end{prototype} In generale \func{strerror} viene usata passando \var{errno} come parametro; -nel caso si specifichi un codice sbagliato verrà restituita un messaggio di -errore sconosciuto. - -Il problema con \func{strerror} è che la funzione utilizza una stringa statica -che non deve essere modificata dal programma e che è utilizzabile solo fino ad -una chiamata successiva a \func{strerror}; nel caso si usino i thread è +nel caso si specifichi un codice sbagliato verrà restituito un messaggio di +errore sconosciuto. La funzione utilizza una stringa statica che non deve +essere modificata dal programma e che è utilizzabile solo fino ad una chiamata +successiva a \func{strerror}; nel caso si usino i thread è provvista\footnote{questa funzione è una estensione GNU, non fa parte dello standard POSIX} una versione apposita: \begin{prototype}{string.h} @@ -388,7 +386,8 @@ provvista\footnote{questa funzione \end{prototype} che utilizza un buffer che il singolo thread deve allocare, per evitare i problemi connessi alla condivisione del buffer statico. Infine, per completare -la caratterizzazione dell'errore, si può usare anche la variabile globale +la caratterizzazione dell'errore, si può usare anche la variabile +globale\footnote{anche questa è una estensione GNU} \var{program_invocation_short_name} che riporta il nome del programma attualmente in esecuzione. @@ -416,13 +415,15 @@ la prima contiene i puntatori alle stringhe di errore indicizzati da l'utilizzo di questa stringa è sostanzialmente equivalente a quello di \func{strerror}. -In \nfig\ si sono riportate le sezioni attineti del codice del programma -\cmd{errcode}, il sorgente completo del programma è allegato nel file -\file{ErrCode.c} e contiene pure la gestione delle opzioni e tutte le -definizioni necessarie a stampare l'etichetta simbolica dell'errore. -le sezioni che -illustrano l'utilizzo delle due funzioni suddette + + +In \nfig\ si sono riportate le sezioni attinenti del codice del programma +\cmd{errcode}, che può essere usato per stampare i messaggi di errore e le +costanti usate per identificare i singoli errori; il sorgente completo del +programma è allegato nel file \file{ErrCode.c} e contiene pure la gestione +delle opzioni e tutte le definizioni necessarie ad associare il valore +numerico alla costante simbolica. In particolare si è riportata \begin{figure}[!htb] \footnotesize