如何将零填充到从int转换的十六进制数?

时间:2018-07-18 23:49:07

标签: c++

我正在打印转换后的十六进制值,如下所示:

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填充?

0 个答案:

没有答案