2013-10-09 137 views
0

所以我想在C打印出的十六進制值++用printf,和好,我想下面的字符串輸出爲VAL:0x0366包括0領先爲什麼這個值會被切斷?

下面的代碼

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

下面是輸出:

0x366 

回答

1

你試過printf("val:0x%04x \n",poo);

printf reference

格式說明如下這個原型:

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

你的情況:

%[0][4][default precision][default lenght]x 
+0

是,它增加了一個空白的地方,我希望爲0〜是 – GelatinFox

+0

只是糾正它,你需要把0標誌,所以它打印0而不是空格。 – fvdalcin

相關問題