c++变量名转字符串

在 C++ 中,如果你想要把一个变量名转换成字符串,可以使用预处理器的 # 运算符和字符串化运算符 operator"" 来实现。

具体而言,你可以在变量名前加上 # 运算符,再把它放在一个字符串化运算符中。这样,预处理器就会把变量名转换成一个字符串。

下面是一个示例代码:

#include <iostream>
#define STR(s) #s
int main() {
    int myVariable = 123;
    std::string myVariableName = STR(myVariable);
    std::cout << "The variable name is: " << myVariableName << std::endl;
    return 0;

在上面的代码中,#s 表示把 s 转换成一个字符串。我们使用了一个宏定义 STR(s),它的作用是将参数 s 转换成字符串。在 main 函数中,我们定义了一个整型变量 myVariable,然后使用 STR 宏将它的变量名转换成字符串并存储在 myVariableName 变量中。最后,我们将变量名打印出来。

需要注意的是,这种方法只能用于预处理阶段,也就是在编译代码之前。运行时是无法获取变量名的。

  •