gpt4 book ai didi

language-agnostic - 如何显示 float 或 double 的二进制表示形式?

转载 作者:行者123 更新时间:2023-12-03 07:30:03 24 4
gpt4 key购买 nike

我想显示 float 的二进制(或十六进制)表示形式。我知道如何手动转换(使用方法 here ),但我有兴趣查看执行相同操作的代码示例。

尽管我对 C++ 和 Java 解决方案特别感兴趣,但我想知道是否有任何语言可以使其变得特别简单,因此我将其设为与语言无关。我很乐意看到其他语言的解决方案。

编辑:我已经很好地了解了 C、C++、C# 和 Java。是否有任何替代语言专家想要添加到列表中?

最佳答案

C/C++ 很简单。

union ufloat {
float f;
unsigned u;
};

ufloat u1;
u1.f = 0.3f;

然后你只需输出u1.u

double 同样容易。

union udouble {
double d;
unsigned long u;
}

因为 double 是 64 位的。

Java 更简单一些:使用 Float.floatToRawIntBits()Integer.toBinaryString() 结合和 Double.doubleToRawLongBitsLong.toBinaryString() 结合.

关于language-agnostic - 如何显示 float 或 double 的二进制表示形式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/397692/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com