我正在打印转换后的十六进制值,如下所示:
std::cout << std::hex << integers[i] << " "; //i is a loop counter
但是它会打印出一些数值的单个数字,例如FF D2 78 9 A9 87 f ff
。我希望这些单个值具有0:FF D2 78 09 A9 87 0f ff
。
我尝试了
if(integers[i] == 1 || ... || integers[i] = (int)'f')
{
std::cout << "0" << std::hex << integers[i] << " ";
}
但是当1 ... f是十六进制值时,它将无法正确打印。如何将值首先转换为十六进制,并检查其一位或两位数字,如果是一位则添加0填充?