我需要帮助执行以下操作:
预处理器宏标签(x)应输出“#x”,例如,
#define label(x) ...
如果我调用 label(aname),输出应为“#aname”(不带引号)
我知道,以下尝试是错误的。
#define label(x) #x // leads to "x"
#define label(x) \#x // is \"x"
#define label(x) "#x" // is "#x" (but not the content of x") "#otto"
它可能存在一种转义#(磅),但我不知道,如何转义...
Edit:我运行“gcc -E test -o test.html”来获取输出。重点是:如何仅使用预处理器的功能用 makro 打印井号 (#)?
答案是:
#define hash #
#define f(x) x
#define label(a) f(hash)a
then
label(foobar)
creates
#foobar
我在以下人员的帮助下找到了它你们所有人,但尤其是冬眠。
多谢!
(使用海湾合作委员会4.3.3)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)