У меня нет VC, чтобы проверить это для вас, однако в принципе должно работать следующее:
CL /DSTRINGIFY(X)=#X /DDEBUG=STRINGIFY(abc) TEST.C
Обновление:
Как подчеркнул Kuber-Ober, VC, похоже, здесь не правильно делает. Тестируя на простом примере, он генерирует:
const char * s = STRINGIFY(abc);
Может работать с другими компиляторами, например, работает следующая командная строка g ++:
g++ -D'STRINGIFY(X)=#X' -D'DEBUG=STRINGIFY(abc)' t.cc -E
# 1 "t.cc"
# 1 "<built-in>"
# 1 "<command line>"
# 1 "t.cc"
const char * s = "abc";