前言
在C/C++的宏中,”#”的功能是将其后面的宏参数进行字符串化操作(Stringfication),简单说就是在对它所引用的宏变量通过替换后在其左右各加上一个双引号。
一、使用步骤
代码如下(示例):
#include <iostream>
char * ToString(int level) {
switch (level) {
#define XX(name) case name: return #name; break;
XX(0);
XX(1);
XX(2);
XX(3);
XX(4);
#undef XX
default:
return "UNKNOW";
}
return "UNKNOW";
}
int main() {
char * value = ToString(2);
std::cout << value << std::endl;
return 0;
}