Bonjour,
J'ai un #define qui vaut 1 à 10
Je veux concaténer ce nombre avec du texte.
Voici ce que j'ai écrit (et ça marche) :
1 2 3 4 5 6 7
| #define N 1
#if N==1
#define MESSAGE Message1
#elif N==2
#define MESSAGE Message2
// Etc jusqu'à 10
#endif |
J'avais essayé ça avant, mais ça ne marchait pas. Dans la deuxième ligne, N n'est pas reconnu comme une macro, et MESSAGE est toujours développé en MessageN. Ets-ce qu'il y a quand même une manière de faire du code un peu compact comme celui ci-dessous, ou bien dois-je me résoudre à la diarrhée ci-dessus :
1 2
| #define N 1
#define MESSAGE Message##N |
Pas davantage de succès comme ça :
#define MESSAGE(X) Message##X
Partager