Я впервые вижу стрингификацию и вставку токенов. Я чувствую, что это может быть хорошим инструментом для этого макроса:
#define MY_NUMBER 3
#define MY_STRING "the number three: ##MY_NUMBER"
printf("%s\n", MY_STRING);
должен вывести:
the number three: 3
printf("%s %d\n", MY_STRING, MY_NUMBER)
??? - person barak manos   schedule 01.09.2015"Hello, " "world!"
). И, наконец, вы можете использовать оператор stringify (#) только для параметров макроса. @alk: Связанный ответ хорош, но я боюсь, что на самом деле это не ответ на эту путаницу. - person rici   schedule 01.09.2015