我有一個指針的地址有問題。轉換指針的地址字符串和分配字符串ADRESS爲指針?
類:
class name{
public:
name();
}
我想要得到的名稱類的指針的地址,並將其轉換爲字符串
name* p=new name();
const char* add=(const char*)&p;
printf("%s \n",add); // input is ������� . how to transfer add to string to use printf("%s \n",add) and result is 0xbfa0f108 ??
printf("%p \n",add); //input is 0xbfa0f108
name *q;
q= add; // i want to assign the address of q to point to p. indirect via add.
如何我需要做什麼?我是一個新的C++;
你的問題是沒有意義的。爲什麼你需要首先將'name *'指針間接轉換爲'char *'?無法使用'%s'打印它,只能用'%p'打印。如果沒有醜陋的類型轉換,你就不能把它分配給'q',例如:'q = *((name **)add);'。你真的想完成什麼?這聽起來像[XY問題](http://mywiki.wooledge.org/XyProblem)。 –
請澄清你的問題。你想打印指針嗎? –
真正的問題:我想獲取C中的一個對象的地址並將地址傳遞給Lua,然後我將地址返回給C.我需要將地址指針轉換爲字符串以便輕鬆地傳遞給Lua。 – nguyenmy