所以我正在尝试使用 printf 在 c++ 中打印出十六进制值,而且我希望以下字符串的输出为 val:0x0366,包括前导 0
这是代码
int poo = 0x00000366;
printf("val:0x%x \n",poo);
这是输出:
0x366
你试过 printf("val:0x%04x \n",poo);
吗?
根据printf 参考,
格式说明符遵循此原型:
%[flags][width][.precision][length]specifier
在你的情况下:
%[0][4][default precision][default lenght]x