C++ 把枚举变量的名称,直接当字符串使用方法 字符串化符号 #

时间:2023-03-10 07:22:38
C++ 把枚举变量的名称,直接当字符串使用方法 字符串化符号 #
#include <stdio.h>
#include <typeinfo>
#include <string>
using namespace std; enum type{FLASH, ONCE}; string Setstr(const char * val)
{
return val;
} #define enumtoCharArr(val) #val
#define enumtoStr(val) Setstr(#val) int main()
{ 
printf("%s\n",typeid(enumtoCharArr(FLASH)).name());//类型
string str = enumtoCharArr(FLASH);
printf("%s\n", str.c_str()); printf("%s\n",typeid(enumtoStr(FLASH)).name());//类型
str = enumtoStr(ONCE);
printf("%s", str.c_str()); getchar();
return 0;
}

  

C++ 把枚举变量的名称,直接当字符串使用方法 字符串化符号 #