Condividi tramite


/D (definizioni preprocessore)

Definisce un simbolo di pre-elaborazione per un file di origine.

/Dname[= | # [{string | number}] ]

Note

È possibile utilizzare questo simbolo con #if o #ifdef per compilare il file di origine in base a determinate condizioni.La definizione del simbolo rimane valida fino a quando nell'origine non viene riscontrata una ridefinizione o la definizione del simbolo non viene rimossa dall'origine utilizzando la direttiva #undef.

/D produce lo stesso effetto che si ottiene utilizzando la direttiva #define all'inizio del file di origine,con la differenza che /D rimuove le virgolette nella riga di comando, mentre #define le mantiene.

Per impostazione predefinita, il valore associato a un simbolo è 1.Ovvero /DTEST equivale a /DTEST=1.Nell'esempio riportato di seguito viene illustrato come la definizione di TEST imposti la stampa di 1.

La compilazione tramite /Dname= impedisce al simbolo di avere un valore associato.Sebbene possa comunque essere utilizzato per la compilazione di codice in base a determinate condizioni, in caso contrario il simbolo non equivarrà a nessun valore.Ad esempio, nel programma di esempio la compilazione mediante /DTEST= causa un errore di compilazione.Questo comportamento è analogo all'utilizzo di #define con o senza un valore.

Il comando che segue definisce il simbolo DEBUG in TEST.c.

CL /DDEBUG  TEST.C

Il comando riportato di seguito rimuove tutte le occorrenze della parola chiave __far in TEST.c.

CL /D__far=  TEST.C

Non è possibile impostare la variabile di ambiente CL in una stringa che contiene un segno di uguale.Per utilizzare /D con la variabile di ambiente CL, è necessario specificare un segno numerico anziché un segno di uguale.

SET CL=/DTEST#0

Quando si definisce un simbolo di pre-elaborazione al prompt dei comandi, considerare le regole di analisi della shell e le regole di analisi del compilatore.Ad esempio, per definire un simbolo di pre-elaborazione con il segno di percentuale (%) nel programma, specificare due percentuali (%%) nella riga di comando.Se si specifica solo una percentuale, viene generato un errore di analisi.

CL /DTEST=%% TEST.C

Per impostare l'opzione del compilatore nell'ambiente di sviluppo di Visual Studio

  1. Aprire la finestra di dialogo Pagine delle proprietà del progetto.Per ulteriori informazioni, vedere Procedura: aprire le pagine delle proprietà dei progetti.

  2. Nel riquadro sinistro fare clic su C/C++, quindi fare clic su Preprocessore.

  3. Nel riquadro destro, modificare la proprietà Definizioni preprocessore.

Per impostare l'opzione del compilatore a livello di codice

Esempio

// cpp_D_compiler_option.cpp
// compile with: /DTEST
#include <stdio.h>

int main( )
{
    #ifdef TEST
        printf_s("TEST defined %d\n", TEST);
    #else
        printf_s("TEST not defined\n");
    #endif
}
  

Vedere anche

Riferimenti

Opzioni del compilatore

Impostazione delle opzioni del compilatore

/U, /u (Annulla la definizione dei simboli)

Direttiva del #undef (C/C++)

Direttiva #define (C/C++)