[問題] 將浮點數以HEX形式顯示

作者: ando5566 (風雲變色)   2014-07-31 00:06:22
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
VC++
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
問題(Question):
如何將浮點數以HEX形式表現, 試過%x, 但結果不正確
餵入的資料(Input):
122.344
預期的正確結果(Expected Output):
例如 0x12C54666....
錯誤結果(Wrong Output):
程式碼(Code):(請善用置底文網頁, 記得排版)
補充說明(Supplement):
作者: purpose (秀才遇到肥宅兵)   2014-07-31 00:15:00
union
作者: kerwinhui (kezza)   2014-07-31 00:18:00
你說的HEX是指IEEE754 representation 還是16進制小數?
作者: ando5566 (風雲變色)   2014-07-31 00:20:00
前者
作者: EdisonX (卡卡獸)   2014-07-31 02:37:00
float x=122.344; printf("%08x",*(unsigned*)&x);
作者: kingzero (一起迷路)   2014-07-31 10:25:00
union 很好用的~~可以嘗試看看
作者: johnjohnlin (嗯?)   2014-07-31 15:25:00
memcpy
作者: yuanyu90221 (菜菜鳥)   2014-08-01 02:02:00
可以考慮 sprintf
作者: kingzero (一起迷路)   2014-08-01 10:59:00
union很好用
作者: saxontai (黑暗,點綴孤零零的星)   2014-08-05 14:49:00
C 的話,printf/scanf 用 "%a" & "%A"C++,(ios_base::fixed | ios_base::scientific)

Links booklink

Contact Us: admin [ a t ] ucptt.com