X-Git-Url: https://gapil.gnulinux.it/gitweb/?p=gapil.git;a=blobdiff_plain;f=option.tex;h=05da09e0a7ee7f1478a58725df9483bf4b0f1307;hp=52dab015623063a9a893ceb3d182430480adf510;hb=a8d6fb4cf9036d69f2884d9ba9d9350f649ed401;hpb=e323f7e103dac7a264d3ef335d23540719df2623 diff --git a/option.tex b/option.tex index 52dab01..05da09e 100644 --- a/option.tex +++ b/option.tex @@ -1,4 +1,5 @@ \chapter{Gestione di parametri e opzioni} +\label{cha:parameter_options} Il passaggio dei parametri e delle variabili di ambiente dalla riga di comando al singolo programma quando viene lanciato è effettuato attraverso le @@ -10,7 +11,7 @@ come argomenti della funzione principale: \end{verbatim} \section{Il formato dei parametri} - +\label{sec:par_format} Il passaggio dei parametri al programma viene effettuato dalla shell, che si incarica di leggere la linea di comando e di effettuarne la scansione (il cosiddetto \textit{parsing}) per individuare le parole che la compongono, @@ -24,6 +25,7 @@ variabile \texttt{argc} viene inizializzata al numero di parametri trovati, in questo modo il primo parametro è sempre il nome del programma (vedi \nfig). \section{La gestione delle opzioni} +\label{sec:opt_handling} In generale un programma unix riceve da linea di comando sia i parametri che le opzioni, queste ultime sono standardizzate per essere riconosciute come @@ -79,9 +81,10 @@ case; la funzione inizializza inoltre alcune varibili globali: In \nfig è mostrato un programma di esempio, + \begin{figure}[htbp] - \begin{center} - \begin{verbatim} + \footnotesize + \begin{lstlisting}{} opterr = 0; /* don't want writing to stderr */ while ( (i = getopt(argc, argv, "o:a:i:hve")) != -1) { switch (i) { @@ -119,13 +122,13 @@ In \nfig } } debug("Optind %d, argc %d\n",optind,argc); - \end{verbatim} - \caption{Esempio di codice per la gestione delle opzioni.} - \label{fig:options_code} - \end{center} + \end{lstlisting} + \caption{Esempio di codice per la gestione delle opzioni.} + \label{fig:options_code} \end{figure} \subsection{Opzioni in formato esteso} +\label{sec:opt_extended} Un'estensione di questo schema è costituito dalle cosiddette \textit{long-options} espresse nella forma \texttt{--option=parameter}, anche @@ -134,6 +137,8 @@ versione estesa di \texttt{getopt}. \section{Le variabili di ambiente} +\label{sec:par_env_var} + Questo va fatto.