C++实现byte数组转hex字符串
时间: 2023-10-17 19:14:02 浏览: 262
byte数组转化为hex
可以使用stringstream库来实现byte数组转hex字符串。
以下是示例代码:
```c++
#include <iostream>
#include <sstream>
#include <iomanip>
using namespace std;
int main()
{
unsigned char bytes[] = {0x12, 0xAB, 0xCD, 0xEF};
stringstream ss;
ss << hex << setfill('0');
for(int i = 0; i < sizeof(bytes); ++i)
{
ss << setw(2) << static_cast<int>(bytes[i]);
}
string hex_str = ss.str();
cout << hex_str << endl;
return 0;
}
```
输出结果为:
```
12abcdef
```
在上面的代码中,我们使用stringstream库创建了一个字符串流对象`ss`,然后通过`hex`标志和`setfill`方法设置输出格式。接着,我们使用一个循环遍历byte数组中的每个元素,并使用`setw`方法设置输出宽度为2,保证输出结果始终为两位十六进制数字。最后,通过`ss.str()`方法获取字符串流中的字符串。
阅读全文