Bonjour

j'ai une macro Macro(x) et voudrai faire un test sur argument (x) du style
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
#define Macro(x)
#if ((x)==0)
#error petit
#elif ((x)>1000)
#error grand
#else développement ici de la macro qui a aussi des tests sur l'argument. 
#endif
Bien sur ci dessus ne fonctionne pas.Tout cela pour ne compiler que le code nécessaire.
J'ai cela mais compile tout et ne me convient pas car si 0 ou >1000 compile aussi, sans avertissement du préprocesseur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
#define Macro(x)\
do{\
if  ((x)>0)\
....
}\
while(0)
Si vous avez la solution, je suis bien sur preneur

Merci