Condividi tramite


/D (definizioni preprocessore)

Aggiornamento: novembre 2007

Definisce un simbolo di pre-elaborazione per il 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 con 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. Ciò significa che /DTEST equivale a /DTEST=1. Nell'esempio riportato di seguito viene illustrato come la definizione di TEST imposti la stampa di 1.

La compilazione con /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 equivale a nessun valore. Ad esempio, nel programma di esempio la compilazione con /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

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 informazioni dettagliate, vedere Procedura: aprire le pagine delle proprietà dei progetti.

  2. Fare clic sulla cartella C/C++.

  3. Fare clic sulla pagina delle proprietà Preprocessore.

  4. 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
}

TEST defined 1

Vedere anche

Riferimenti

Opzioni del compilatore

Impostazione delle opzioni del compilatore

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

The #undef Directive

The #define Directive