【发布时间】:2013-07-16 22:02:28
【问题描述】:
我需要在 C 中使用宏生成一些变量名。 似乎#token-pasting 运算符完成了这项工作,但结果始终是一个字符串。
#define create_var( name ) char #name
将不起作用,因为名称在“名称”(作为字符串)中扩展。
#define create_var( name ) char prefix##name
会起作用,但我所有的变量都会有一个前缀。
有什么技巧可以获得简单的名字吗?
create(test) 展开
char test;
非常感谢,
【问题讨论】:
-
#define create(x) char x;,也许? -
非常感谢,我只是因为树木而无法看到森林 :)