Конвертируйте значение ip, которое хранится в шестнадцатеричном виде внутри строки для преобразования в фактическое строковое значение в C ++ - PullRequest
0 голосов
/ 23 апреля 2020

Пример: если IP хранится в виде шестнадцатеричного значения в строке, его значение ascii будет равно \ n \ 003c \ 005, что равно 0x0A036305 в шестнадцатеричном формате или 10.3.99.5 в формате ip. Итак, как преобразовать это в строку "10.3.99.5"?

т.е. "0x0A036305" из этого я должен получить "10.3.99.5"

1 Ответ

0 голосов
/ 23 апреля 2020

Это очень просто.

std::string in = "\n\003c\005";
std::string out = std::to_string((int)in[0]) + "." +
     std::to_string((int)in[1]) + "." +
     std::to_string((int)in[2]) + "." +
     std::to_string((int)in[3]);
...