2013-07-26 57 views
-2
printf("\nCARD STATUS for GO_IDLE_STATE 0x%02X:",card_status.i); 

此打印出:對於GO_IDLE_STATE 100打印的十六進制值不工作

卡狀態

我的問題是,爲什麼只有三個數字印刷,應該不是隻2位數字?

+2

它的三個數字'02'沒有辦法洛斯數 –

+9

在你的格式說明位數僅僅是一個最低限度......如果它沒有足夠代表的價值,你會得到更多。 – Dmitri

+1

數字格式總是打印所有需要的數字;有時它們打印的數據超過了轉換規範中指定的寬度。 –

回答

1

也可以參照this pagewidth符:要打印的

字符的最小數量。如果要打印的值小於此數字,則結果將填充空白。 即使結果較大,值也不會被截斷。