/D (Définitions de préprocesseur)
Définit un symbole de prétraitement pour un fichier source.
/Dname[= | # [{string | number}] ]
Notes
Vous pouvez utiliser ce symbole avec #if ou #ifdef pour effectuer une compilation conditionnelle du code source. La définition du symbole reste en vigueur jusqu'à ce qu'elle soit redéfinie ou annulée dans le code par la directive #undef.
/D a le même effet que la directive #define au début d'un fichier de code source, sauf que /D enlève les guillemets sur la ligne de commande et que #define les conserve.
Par défaut, la valeur associée à un symbole est 1. Par exemple, /Dname équivaut à /Dname**=1**. Dans l'exemple situé à la fin de cet article, la définition de TEST indique d'afficher 1.
Lors d'une compilation avec /Dname**=**, aucune valeur n'est associée au symbole. Bien que le symbole puisse toujours être utilisé pour effectuer une compilation de code conditionnelle, il ne retourne rien. Dans l'exemple, si vous compilez à l'aide de /DTEST=, une erreur se produit. Ce comportement ressemble à l'utilisation de #define avec ou sans valeur.
Cette commande définit le symbole DEBUG dans TEST.c:
CL /DDEBUG TEST.C
Cette commande supprime toutes les occurrences du mot clé __far dans TEST.c :
CL /D__far= TEST.C
Vous ne pouvez pas définir la variable d'environnement CL en tant que chaîne contenant le signe égal. Pour utiliser /D avec la variable d'environnement CL, vous devez spécifier le signe dièse à la place du signe égal :
SET CL=/DTEST#0
Lorsque vous définissez un symbole de prétraitement à l'invite de commandes, tenez compte des règles d'analyse du compilateur et des règles d'analyse du shell. Par exemple, pour définir le symbole de prétraitement pourcentage (%) dans votre programme, spécifiez deux caractères pourcentage (%%) à l'invite de commandes : si vous n'en spécifiez qu'un seul, une erreur d'analyse est émise.
CL /DTEST=%% TEST.C
Pour définir cette option du compilateur dans l'environnement de développement Visual Studio
Ouvrez la boîte de dialogue Pages de propriétés du projet. Pour plus d'informations, consultez Comment : ouvrir les pages de propriétés d'un projet.
Dans le volet gauche, sélectionnez Propriétés de configuration, C/C++, Préprocesseur.
Dans le volet droit, dans la colonne de droite de la propriété Définitions de préprocesseur, ouvrez le menu déroulant et choisissez Modifier.
Dans la boîte de dialogue Définitions de préprocesseur, ajoutez (une par ligne), modifiez ou supprimez une ou plusieurs définitions. Choisissez OK pour enregistrer vos modifications.
Pour définir cette option du compilateur par programmation
- Consultez PreprocessorDefinitions.
Exemple
// 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
}
Voir aussi
Référence
Définition des options du compilateur