metaprogramming - 你能嵌套 C 预处理器指令吗?

标签 metaprogramming c-preprocessor preprocessor-directive

例如,是否有以下可能:

#define definer(x) #define #x?

最佳答案

不,你不能那样做。
磅 ( # ) 符号在定义中具有不同的含义。这意味着 - 如果这是一个参数,通过引用它使其成为一个字符串。

关于metaprogramming - 你能嵌套 C 预处理器指令吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/427220/

相关文章:

ruby - ruby 中实例和类方法的生命周期回调

C++ 可变参数模板类型过滤转换

ruby - 在 Ruby 中动态替换对象上的方法实现

c# - C# 预处理器指令中的源代码和 PDB 文件中的行号

Haskell 重叠实例和类型函数

c - 使用 C 预处理器处理嵌套 header

c++ - 如何打印#define 语句?

c - 无法获得宏和运算符优先级背后的逻辑

c - 在 C 中替换宏中的宏

c - 使用以前未定义的宏时不会出现编译器错误