在预处理器中,我们可以在宏之间进行切换,例如,
#define BUFF(n) BUFF_##n
因此,BUFF(1) 将被 BUFF_1 取代,BUFF(2) 将被 BUFF_2 和歌曲取代
这是否适用于 C 变量?即,动态地在相似变量之间进行选择。我知道这是一个奇怪的情况,可以使用数组或任何其他构造来处理。但这种情况需要我这样的情况。你能帮忙解决这个问题吗。提前致谢
最佳答案
是的,您可以使用该宏将 BUFF_
应用于任何事物。预处理器将扩展宏,然后编译器将尝试编译结果。后者可能会失败,因为如果您使用 BUFF(+)
,您会得到 BUFF_+
而这不是有效的变量名。
关于c - C 中的变量名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1872259/