Можно создать дубликат:
c++ preprocessor macro expansion to another preprocessor directiveопределить макрос расширен буквальные #
Мой вопрос очень прост: я хочу использовать «#» в макроподстановках, например, для определения марко 'M (X)':
#define M(X) #ifdef FOO \
X=1 \
#else \
X=2
Я пытался использовать '\', чтобы избежать '#', но '\' интерпретируется как символ новой строки F или макрорасширение, а не как escape-символ. Итак, как использовать '#' в расширении макросов?
Спасибо, ребята!
Вы должны принять любой ответ, который был вам полезен. (Нажмите галочку и поверните ее зеленым цветом.) –