我试图将浮点数转换为二进制字符串 . 我注意到有很多教程将浮动转换为所谓的"binary float."例如,数字 8.5
在二进制浮点 1000.1
中 .
这可以通过使用modf函数将尾数除以使整数部分和小数部分作为两个单独的整数来找到 . 然后使用位操作或仅使用除以2(对于十进制整数部分)打印这两个整数的二进制表示 .
1000.1
不是我想要的 . 我想要实际的二进制字符串表示 .
01000001 00001000 00000000 00000000
我无法放心,当使用modf函数时,我的float将能够转换为两个整数 .
我目前有将整数转换为二进制字符串的函数 . 我想知道浮子是否存在这样的东西 . 如果是这样,请指出我正确的方向 . 谢谢 .
1 回答
获取float的地址,将其转换为
int*
(或具有相同sizeof
的其他适当的整数类型),然后使用现有函数: