我有一個程序需要採用2位數的十六進制值(最多FF
),並將每個數字轉換爲單獨的4位二進制值(最多爲1111
)。我能夠編寫一個算法來爲我做這件事,但在這之前,有沒有一種簡單的方法可以用C++中的內置函數來實現這一點?將十六進制值轉換爲二進制值
回答
在十六進制字符和它們的二進制之間寫一個映射。
std::string HexCharToBinary(char c) {
switch (c) {
case '0': return "0000";
case '1': return "0001";
// Now input rest of the cases.
case 'f': return "1111";
default: assert(false); return "bad input";
};
正如@Crazy Eddie在評論部分指出的那樣。
使用數組會更好,最優的解決方案。
你可以請鏈接這(http://stackoverflow.com/questions/483609/how-can- i-convert-hexadecimal-numbers-to-binary-in-c)來代替,以避免重複。 – Soundararajan
爲什麼哦爲什麼你不使用數組? –
如果對另一個問題的回答可以解決此問題,請將問題標記爲重複,而不是複製答案。絕對不要複製沒有歸屬。 – interjay
- 1. 將十六進制轉換爲二進制到十六進制?
- 2. 在VB6中將十六進制值轉換爲十進制值
- 3. 將二進制位轉換爲十六進制值
- 4. 將十六進制(二進制補碼)轉換爲Java值
- 5. 將十進制轉換爲十六進制/二進制
- 6. 十六進制轉換爲二進制
- 7. 十六進制轉換爲二進制
- 8. 將十進制轉換爲十六進制和十六進制
- 9. 將十六進制值轉換爲ascii
- 10. 將十六進制值轉換爲bigint
- 11. 將十六進制轉換爲二進制,然後轉換爲十進制
- 12. 在Visual C++中將十進制值轉換爲十六進制
- 13. 將十進制轉換爲十六進制值
- 14. 在Python中將十六進制值轉換爲十進制
- 15. 將十六進制轉換爲十進制值
- 16. 使用遞歸將十六進制轉換爲十進制值
- 17. 將十進制值轉換爲32位浮點十六進制
- 18. 將4字節十六進制轉換爲十進制值
- 19. VB.Net - 將多字節十六進制值轉換爲十進制
- 20. 將十六進制轉換爲十進制值? w/an example
- 21. 二進制轉換爲十六進制值(32位)
- 22. 從十六進制轉換爲二進制值
- 23. 二進制轉換爲十六進制和十六進制轉換爲二進制
- 24. 將十進制轉換爲二進制,八進制和十六進制?
- 25. 將十進制數轉換爲二進制/十六進制/八進制符號
- 26. 十六進制到二進制轉換
- 27. 轉換十六進制到二進制
- 28. 二進制到十六進制轉換
- 29. 轉換十六進制字符串十六進制值
- 30. 轉換爲十六進制值,以ASCII
正在做這與字符串表示的十六進制字符?什麼是'FF' – asimes
你可以檢查下面的答案是否是你的問題。 http://stackoverflow.com/questions/18310952/convert-strings-between-hex-format-and-binary-format – Soundararajan