#define 标识符 标记序号
#undef 未知标识符
给顶下列定义:
#define cat(x, y) x##y
宏调用cat(var, 123)将生成var 123, 但宏调用cat(cat(1, 2), 3)没有定义: ##阻止了外层调用的扩展,产生cat(1, 2)3, )3不是一个合法的记号, 采用下列定义可实现二层宏定义:#define xcat(x, y) cat(x, y), xcat(cat(1, 2), 3)将生成123
#define 标识符 标记序号
#undef 未知标识符
给顶下列定义:
#define cat(x, y) x##y
宏调用cat(var, 123)将生成var 123, 但宏调用cat(cat(1, 2), 3)没有定义: ##阻止了外层调用的扩展,产生cat(1, 2)3, )3不是一个合法的记号, 采用下列定义可实现二层宏定义:#define xcat(x, y) cat(x, y), xcat(cat(1, 2), 3)将生成123