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) :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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 :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
#define N 1
#define MESSAGE Message##N
Pas davantage de succès comme ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
#define MESSAGE(X) Message##X