Differenze tra le versioni di "C/Compilatore e precompilatore/Direttive"

Jump to navigation Jump to search
nessun oggetto della modifica
Ecco le direttive:
 
==={{IndexItem|direttive #define}}<tt>#define</tt>===
La direttiva <tt>#define</tt> serve per definire {{IndexItem|macro}}macro. Sintassi:
#define nomemacro testomacro
Abbiamo trattato l'{{IndexItem|operatore ?}}operatore ? [[Linguaggio_C/Blocchi_e_funzioni/Blocchi_if_e_switch#L.27operatore_.3F|qui]].
 
==={{IndexItem|direttive #if, #else, #elif ed #endif}}<tt>#if, #else, #elif ed #endif</tt>===
 
Queste direttive servono per la {{IndexItem|compilazione condizionale}}''compilazione condizionale''.
</pre>
 
==={{IndexItem|direttive #include}}<tt>#include</tt>===
La direttiva <tt>#include</tt> è molto importante: permette di includere un file C in un altro. La sua sintassi è la seguente:
 
Qual è la differenza fra parentesi angolari e virgolette? Dipende dal compilatore, ma solitamente con le parentesi angolari il {{IndexItem|linker}}linker cerca nelle directory della libreria standard, mentre con le virgolette si cerca il file prima all'interno della directory corrente e poi all'interno delle directory della libreria standard.
 
==={{IndexItem|direttive #line}}<tt>#line</tt>===
 
La direttiva <tt>#line</tt> permette di alterare il contenuto delle [[#Macro|macro]] [[#__LINE__|__LINE__]] e [[#__FILE__|__FILE__]].
Il file è opzionale.
 
==={{IndexItem|direttive #pragma}}<tt>#pragma</tt>===
La direttiva <tt>#pragma</tt> serve per inviare particolari istruzioni al compilatore. Le opzioni disponibili variano da compilatore a compilatore, per cui è consigliabile consultarne la documentazione.
 
==={{IndexItem|direttive #undef}}<tt>#undef</tt>===
La direttiva <tt>#undef</tt> serve per cancellare delle macro definite in precedenza con <tt>#define</tt>. Sintassi:
 
Il preprocessore accetta anche degli speciali operatori:
 
===L'operatore {{IndexItem|# (operatore) #}}<tt>#</tt>===
 
Questo operatore serve per trasformare una sequenza di caratteri in stringa all'interno di una macro.
}
 
===L'operatore {{IndexItem|operatore ## (operatore)}}<tt>##</tt>===
 
Questo operatore si chiama ''operatore di concatenamento''. Esempio:
Questo programma stamperà il numero 10.
 
===L'operatore {{IndexItem|defined (operatore) defined}}<tt>defined</tt>===
 
==Le macro==

Menu di navigazione