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