Linux supporta anche una altra funzione, \func{fcloseall}, come estensione GNU
implementata dalle \acr{glibc}, accessibile avendo definito
-\const{\_GNU\_SOURCE}, il suo prototipo è:
+\macro{\_GNU\_SOURCE}, il suo prototipo è:
\begin{prototype}{stdio.h}{int fcloseall(void)}
Chiude tutti gli stream.
Per questo motivo le \acr{glibc} prevedono, come estensione GNU, due
nuove funzioni per la gestione dell'input/output di linea, il cui uso
permette di risolvere questi problemi. L'uso di queste funzioni deve
-essere attivato definendo la macro \const{\_GNU\_SOURCE} prima di
+essere attivato definendo la macro \macro{\_GNU\_SOURCE} prima di
includere \file{stdio.h}. La prima delle due, \func{getline}, serve per
leggere una linea terminata da un newline esattamente allo stesso modo
di \func{fgets}, il suo prototipo è:
Per eliminare alla radice questi problemi, le \acr{glibc} supportano una
specifica estensione GNU che alloca dinamicamente tutto lo spazio necessario;
-l'estensione si attiva al solito definendo \const{\_GNU\_SOURCE}, le due
+l'estensione si attiva al solito definendo \macro{\_GNU\_SOURCE}, le due
funzioni sono:
\begin{functions}
\headdecl{stdio.h}
\func{write}.}
\end{prototype}
\noindent anche di questa funzione esiste una analoga
-\func{fflush\_unlocked}\footnote{accessibile definendo \const{\_BSD\_SOURCE} o
- \const{\_SVID\_SOURCE} o \const{\_GNU\_SOURCE}.} che non effettua il blocco
+\func{fflush\_unlocked}\footnote{accessibile definendo \macro{\_BSD\_SOURCE} o
+ \macro{\_SVID\_SOURCE} o \macro{\_GNU\_SOURCE}.} che non effettua il blocco
dello stream.
Se \param{stream} è \val{NULL} lo scarico dei dati è forzato per tutti gli
necessita di compiere più di una operazione sullo stream atomicamente, per
questo motivo le librerie provvedono anche delle funzioni che permettono la
gestione esplicita dei blocchi sugli stream; queste funzioni sono disponibili
-definendo \const{\_POSIX\_THREAD\_SAFE\_FUNCTIONS} ed i loro prototipi sono:
+definendo \macro{\_POSIX\_THREAD\_SAFE\_FUNCTIONS} ed i loro prototipi sono:
\begin{functions}
\headdecl{stdio.h}