所以我在我的項目中遇到了一個路障。 我想要做的是找出一種方法來採取四個單獨的二進制字符表示標誌。現在我的最後一項任務是把這四個標誌放在一個char []中,這根本不難。但現在,我想採取四個並將其轉換爲十六進制。如何將char []轉換爲Hex? C
因此,例如:
O = 1;
C = 1;
Z = 0;
N = 0;
char flags[5];
flags[0] = O;
flags[1] = C;
flags[2] = Z;
flags[3] = N;
現在我想做一個字符串或東西,我可以在上述轉換爲十六進制。因此,例如我想1100轉換爲一個十六進制,這是0xC
現在我已經嘗試使它在一個字符串中,然後解析它,但我很困惑,現在失去了。我看不到正確的輸出。
如果有什麼修改代碼,我想要十六進制是4個字符長? –
@Prince Kishore:'sprintf(buffer,「%04X」,0xffff&flags);'//假定你不需要0x前綴。在4個十六進制數字之後,仍然有第5個字符= 0終止字符串。 「 – Curd