#define STR(x) #x
#define _STR(x) STR(x)
#define x 123
如果你这样用 STR(x); 如果这时x本身是一个宏, 那么展开会是"x", 而不是"123"
而如果是用 _STR(x); 那么会展开宏定义里的宏, 结果就是"123".
windows里用这个解决字符问题用的很多.
#define STR(x) #x
#define _STR(x) STR(x)
#define x 123
如果你这样用 STR(x); 如果这时x本身是一个宏, 那么展开会是"x", 而不是"123"
而如果是用 _STR(x); 那么会展开宏定义里的宏, 结果就是"123".
windows里用这个解决字符问题用的很多.