[問題] 浮點轉二進位

看板C_and_CPP作者 (EEcheng)時間8年前 (2017/11/07 20:14), 編輯推噓4(405)
留言9則, 6人參與, 8年前最新討論串1/1
https://imgur.com/K7iUYhq
我想輸入一個浮點數0.00390625 卻輸出0000000000...(64個) 請問我錯哪裡??(我用float已經成功 但換成double卻不行) -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.116.110.8 ※ 文章網址: https://www.ptt.cc/bbs/C_and_CPP/M.1510056847.A.0A7.html

11/07 20:23, 8年前 , 1F
沒跑過code 但應該是型態問題 你用int pointer指向精度
11/07 20:23, 1F

11/07 20:23, 8年前 , 2F
更高的double 會有數值錯誤 可以看看IEEE 754
11/07 20:23, 2F

11/07 20:25, 8年前 , 3F
double 8bytes, int 4bytes, 把double 起始pointer
11/07 20:25, 3F

11/07 20:26, 8年前 , 4F
指給 int*, 我猜是不是抓到了 double 的上半部32bits?
11/07 20:26, 4F

11/07 20:27, 8年前 , 5F
如1F所說, double 數值部分應參照IEEE 754
11/07 20:27, 5F

11/07 20:44, 8年前 , 6F
你都用線上ide了就直接貼網址啦XD
11/07 20:44, 6F

11/07 20:44, 8年前 , 7F
我在想你1可以左移幾次?常數不是預設是int嗎?
11/07 20:44, 7F

11/07 21:11, 8年前 , 8F
https://ideone.com/WOaS2E 寫給你喔 ^_^
11/07 21:11, 8F

11/07 21:17, 8年前 , 9F
感謝各位大大的寶貴意見^^
11/07 21:17, 9F
文章代碼(AID): #1Q0QEF2d (C_and_CPP)