一种将值序列更改为十六进制字符的低成本方法

时间:2019-06-24 11:31:05

标签: c++ boost hex c++14

我在uint8_t *类型的有效负载中有一个值序列,其大小等于常量size(32)。 我的目标是将此序列转换为带有小写字母的十六进制字符。

我写了这段代码:

size_t constant_size = 12;
const std::String s1(reinterpret_cast<const char*>(payload), constant_size);
std::string final = boost::algorithm::hex(s1);
boost::algorithm::to_lower(final);

此代码运行良好。但是它的成本非常高,因为我正在使用一些缓冲区处理和副本,这会降低性能。

这是将我的数据(类型为uint8_t *)转换为带有小写字母的十六进制字符的更好方法吗?

0 个答案:

没有答案