C++中,如何将char bytes[]数组的数据,以16进制的格式打印输出
时间: 2024-03-11 20:51:38 浏览: 320
vcv.rar_bmp to arr_bmp 数组_site:www.pudn.com
可以使用C++标准库中的iomanip头文件中的setfill和setw函数来控制输出宽度和填充字符,以及hex流控制符来控制输出格式。
下面是一个示例代码:
```c++
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
char bytes[] = { 0x12, 0x34, 0xab, 0xcd };
int len = sizeof(bytes) / sizeof(bytes[0]);
for (int i = 0; i < len; i++)
{
cout << hex << setfill('0') << setw(2) << (int)(unsigned char)bytes[i] << " ";
}
cout << endl;
return 0;
}
```
上述代码中,setfill和setw函数用来控制每个16进制数输出的宽度和填充字符,hex流控制符用来控制输出格式为16进制。将数组中的每个元素转换成unsigned char类型,可以确保输出正确的16进制数。
阅读全文