mon pb, quand je fais un #define conditionnel, je ne peux pas l'utiliser (error : invalide lvalue in assignment), alors qu'un #define classique fonctione. Voici les deux :
pour précision, p_text_courant est du type "ligne_text**" , pour pouvoir promener mes listes dans mes fonctions
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 #define modadr_eff_ ((*p_text_courant)->mod_adr_op1) /* là çà va */ #define modadr_eff_ ( (quel_op == 1) ? ((*p_text_courant)->mod_adr_op1) : ((*p_text_courant)->mod_adr_op2) ) /* là non*/ modadr_eff_ = mod_adr; /*utilisation dans une fonction, dans laquelle je déclare auparavant mod_adr et lui affecte une adresse */ /* si je remplace modadr_eff_ par le texte voulu, çà fonctionne aussi
quel_op est un entier permettant de savoir si j'étudie l'opérande 1 ou 2.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 struct ligne_text { ... int mod_adr_op1; int mod_adr_op2; ... struct ligne_text *suivant; };
ayant tout une batterie de tests à faire, j'aimerais autant ne pas les écrire deux fois (faisable, mais moche)
merci de votre aide
Partager