hi a есть переменная указателя со значением 0x6859510364, Мне нужно преобразовать ее в строку с изменением ее значения. пожалуйста, кто-нибудь может мне помочь. благодарит заранее.Как преобразовать длинное значение в строку без изменения его содержимого?
-1
A
ответ
1
вы всегда можете использовать std::ostringstream
, как
#include <sstream>
#include <string>
std::string toString(void* p)
{
std::ostringstream stream;
stream << p;
return stream.str();
}
примечание: если это указатель на функцию, то это формально не конвертируются в void*
, а затем вы должны настроить подпись функции выше, чтобы принять ваш тип указателя ,
вы можете также добавить const
и т.д.
вместо того, чтобы писать такие функции себя, вы можете использовать boost::lexical_cast
, из библиотеки Boost.
Приветствия & НТН.,
1
Вы хотите адрес или содержимое этого адреса? –
Какой бы ни был ответ, есть много вопросов, таких как этот уже ответил. Пожалуйста, найдите их. – Simone
Вам нужно решить, выполняете ли вы это на C или C++ - это два разных языка. –