String Value是int指针的名称

时间:2017-10-08 05:30:55

标签: c++ pointers casting dereference

struct token{ string type; string value;};

//Global variables:
int reg[10]={-1,...,-1};
int* R0 = reg;

... down in some func...
cout<< *(R0)<< endl;//OUTPUTs -1
int valInR0= *reinterpret_cast<int*>(&token.value) //contains string "R0"

问题是我有一个结构,其中包含一个名为value的字符串成员来存储不同的名称,当我尝试从字符串中取出一个int指针的名称时,我无法弄清楚如何使它成为引用返回int指针并取消引用其值。

如上例所示,从我的结构中取出字符串val“R0”,然后使用它来访问int * RO,这是我想要完成的,但没有成功。

1 个答案:

答案 0 :(得分:0)

感谢您的回答,我决定操作该名称,所以如果存储了R5,我会扯掉R,将5存储在一个int中,然后可以使用它来获取一个偏移量来访问{{ {1}},如下:

*(reg+5)