Opposite of C preprocessor “stringification”

后端 未结 2 2050
暖寄归人
暖寄归人 2020-12-03 04:26

When using C preprocessor one can stringify macro argument like this:

#define TO_STRING(x) \"a string with \" #x

and so when used, the resu

相关标签:
2条回答
  • 2020-12-03 04:53

    No, you can't unstringify something.

    0 讨论(0)
  • 2020-12-03 05:05
    //unstringify test
    
    enum fruits{apple,pear};
    
    #define IF_WS_COMPARE_SET_ENUM(x) if(ws.compare(L#x)==0)f_ret=x;
    
    fruits enum_from_string(wstring ws)
    {
     fruits f_ret;
     IF_WS_COMPARE_SET_ENUM(apple)
     IF_WS_COMPARE_SET_ENUM(pear)
     return f_ret;
    }
    
    void main()
    {
     fruits f;
     f=enum_from_string(L"apple");
     f=enum_from_string(L"pear");
    }
    
    0 讨论(0)
提交回复
热议问题