int qs = 465;
std::ostringstream os;
os << &qs;
QString tt = QString::fromStdString(os.str());
qDebug() << &qs; // output: 0x28fda8
qDebug() << tt; // output: "0x28fda8"
int *pp = tt; // how can i do this?
나는 바보 알고하지만 난 당신이 안이어떻게 문자열을 주소로 변환합니까?
기본적으로 당신은 당신이 그것을 수행하는 방법을 알고, 정수로 문자열을 변환해야합니까? – Stefan
'QString'과'int *'는 관련이 없으므로이 변환은 의미가 없습니다. 이것은 실제로 XY 문제인 것처럼 보입니다. 실제로 무엇을 성취하려고하는지 명시해야합니다. 문자열에 저장된'qs '주소를 실제 포인터로 변환하려고합니까? – VTT
'int * pp = tt;'무엇을하고 싶니? 'tt'는'QString'이며'int *'에 맞지 않습니다. 'tt'에서 포인터 크기의 청크를 잡아서'pp'에 저장할 수 있습니다. 'pp'가'tt'를 가리 키도록 할 수도 있습니다. 올바른 유형의 실제로 존재하는 객체 (그리고 기존 객체 뒤에있는 객체) 만 가리킬 수 있으므로 문제는 정의되지 않은 동작입니다. 'void * pp = &tt;'을하면 UB없이'pp'에'tt'의 주소를 저장할 수 있습니다. – nwp