GCC扩展符(#,##)
先来说说这两个扩展符的各自用处吧,“#”是将宏字符串化(Stringification),“##”是将##左右两边的标签组合在一起(token pasting or token concatenation),下面从两个简单例子着手:
Macro arguments are completely macro-expanded before they are substituted into a macro body, unless they are stringified or pasted with other tokens. After substitution, the en-tire macrobody, including the substituted arguments, is scanned again for macros to be expanded.
【参考文献】
1. The C Preprocessor (For gcc version 4.7.2)