可以访问C中浮点常量的位表示;
例如,我想分配

uint64_t x = //bit representation of 5.74;

其代表为
0x40b7ae14
你认为有可能吗?

最佳答案

实现这一点的一种方法是使用工会:

union {
    double fltValue;
    uint64_t uintValue;
} conversion;

conversion.fltValue = 5.74;
printf("%#llx\n", conversion.uintValue);

感谢Aracthor提到它。感谢EOF。
有关工作示例(使用%#x而不是%#llx),请参见:
https://ideone.com/p4rH5l

关于c - C中的浮点常量,位表示,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/30913500/

10-11 17:59