回答
long long unsigned n = 0x000000000076fba1;
printf("%0x0.16llx\n", n);
#ifdef __int64
printf("%#018I64x\n", n); /* for MSVC+MinGW */
#else
printf("%#018llx\n", n); /* other compiler with "unsigned long long" support */
#endif
在格式中使用「#」有幾個問題。您需要考慮添加到輸出的「0x」,因此您需要使用18而不是16的寬度。另外,如果沒有前導「0x」,則輸出0(零)值(如果寬度爲16,則輸出爲「0000000000000000」)。 – joast 2010-08-24 16:48:34
你是對的,我正確的16 - > 18 – user411313 2010-08-24 17:31:11
不要使用寬度,使用精度。 '「%#。16」PRIu64「x \ n」'。特別是不要用這種可怕的'#ifdef'廢話亂拋垃圾的代碼。 – 2010-08-24 23:57:44
- 1. 以十六進制打印大數字
- 2. 打印出十六進制?
- 3. 打印十六進制ASCII
- 4. C++:雙十六進制打印表示
- 5. C++陣列打印十六進制?
- 6. 在JavaScript中打印字節數組的十六進制或十進制值
- 7. 將字節打印爲十六進制
- 8. 打印長十六進制字符串
- 9. Ç打印十六進制字節
- 10. 打印十六進制字符串
- 11. 打印十六進制大寫字母
- 12. 無法在C中打印十六進制字節
- 13. 在C中打印十六進制字符
- 14. 如何在C++中以十六進制打印'\ n'字符
- 15. 在C +/C++中查找十六進制範圍內的十六進制數字
- 16. 以十六進制打印字符數組C
- 17. 在C++中將十六進制十六進制字符標記爲十進制
- 18. 打印出來的數字爲十六進制數字
- 19. 十六進制和字符數組打印有什麼區別?
- 20. 在文件中替換十進制的所有十六進制
- 21. 從字節數組中打印十六進制浮點常量
- 22. C#在文件中使用十六進制打印FFFFFF
- 23. 在C中,如何將char []打印爲轉義十六進制?
- 24. 在C中打印最大十六進制精度
- 25. 如何在C中打印十六進制雙精度?
- 26. 將字節2d數組打印爲十六進制字符串
- 27. 一次打印十六進制數字2個字節
- 28. 如何在haskell中以二進制或十六進制打印整數文字?
- 29. 使用write()打印十六進制
- 30. Python:以十六進制打印變量
您是不是要找的printf( 「0X%016llx \ N」,N)? – joast 2010-08-24 14:04:25
嗯,我現在寫了,但是在閱讀這個案例的文檔之後,它們幾乎一樣 – 2010-08-24 14:07:21
是的,任何一個人都可以在這種情況下工作。 注意:如果您使用Windows,則可能必須使用類似printf(「%0x016I64 \ n」,n)的內容。我不記得MS何時增加了對「ll」作爲格式說明符的支持。 – joast 2010-08-24 14:14:23