#define Str(x) #x
#define Xstr(x) Str(x)
#define OP plus
char *opname = Xstr(OP);
这段代码把 opname 置为 ``plus" 而不是 ``OP"。
在使用符号粘接操作符 ## 连接两个宏的值 (而不是名字) 时也要采用同样的 ``迂回战术"。
参考资料: [ISO, Sec. 6.8.3.2, Sec. 6.8.3.5]。
翻译朱群英、孙云, LaTeX2HTML 编译 朱群英 (2005-06-23)