Concetti Chiave
- La direttiva #include ha due varianti: la prima cerca i file nelle directory standard del compilatore, la seconda nella directory corrente.
- Le direttive condizionali come #if, #ifdef e #ifndef consentono di escludere porzioni di codice dalla compilazione in base a condizioni specifiche.
- Ogni direttiva condizionale deve essere chiusa con #endif, che deve apparire una sola volta nel contesto delle direttive aperte.
- È possibile utilizzare più direttive #elif per gestire casi aggiuntivi, mantenendo sempre #endif come chiusura finale.
- La direttiva #else fornisce un'alternativa quando le condizioni di #if, #ifdef e #ifndef non vengono soddisfatte, offrendo flessibilità nel codice.
Tipi di direttiva include
La direttiva #include può essere di due diversi tipi:
- #include
- #include “file”, i file che vengono cercate nella directory corrente, ovvero nella stessa cartella dove è contenuto il file che contiene l’istruzione in questione
Utilizzo delle direttive condizionali
È possibile utilizzare le direttive #include in modo che esse siano nidificate.
Le direttive condizionalialialialialialiali per il preprocessore #if, #ifdef, #ifndef sono utilizzate per escludere una parte di codice dalla compilazione se si verificano determinate condizioni, utili per attivare o disattivare parti del codice, per includere o meno file senza usare commenti.
Se si utilizza ognuna di queste tre direttive, la direttiva deve terminare con la direttiva #endif, che può essere presente una sola volta in tutto il costrutto, altrimenti se necessario perché presenti più direttive si può usare più volte #elif, ma comunque #endif va sempre per ultimo.
- #if espressione-costante-intera: considerata solo se risultato diverso da 0, solo se definita
- #ifdef macro: considerata solo se macro e gia stata definita e non commentata
- #ifndef macro: considerata solo se macro non e stata definita
- #else: considerata come alternativa quando #if, #ifdef, #ifndef non vengono considerate
Domande da interrogazione
- Quali sono i due tipi di direttiva #include e come si differenziano?
- Come si utilizzano le direttive condizionali nel preprocessore?
- Qual è la funzione delle direttive #if, #ifdef e #ifndef?
Le direttive #include possono essere di due tipi: la prima è `#include` che cerca i file nelle directory standard del compilatore, mentre la seconda è `#include "file"` che cerca i file nella directory corrente, ovvero nella stessa cartella del file sorgente.
Le direttive condizionali come #if, #ifdef e #ifndef permettono di escludere parti di codice dalla compilazione in base a determinate condizioni. Queste direttive devono terminare con #endif, e possono essere nidificate per gestire complessità nel codice.
La direttiva #if valuta un'espressione costante, #ifdef verifica se una macro è definita, e #ifndef controlla se una macro non è definita. Queste direttive consentono di attivare o disattivare parti del codice senza l'uso di commenti.