0

所以我正在尝试使用 printf 在 c++ 中打印出十六进制值,而且我希望以下字符串的输出为 val:0x0366,包括前导 0

这是代码

 int poo = 0x00000366;
 printf("val:0x%x \n",poo);

这是输出:

0x366
4

1 回答 1

1

你试过 printf("val:0x%04x \n",poo);吗?

根据printf 参考

格式说明符遵循此原型:

%[flags][width][.precision][length]specifier

在你的情况下:

%[0][4][default precision][default lenght]x
于 2013-10-09T20:20:35.653 回答