【发布时间】:2013-09-27 02:53:16
【问题描述】:
在我的项目中,我有一个带有十六进制值 (Big Endian) 的 QString
QString hex_in("413DF3EBA463B0");
如何将 hex_in 转换为圆角双精度数? IEEE 754 (https://en.wikipedia.org/wiki/Double_precision_floating-point_format)
34.5
用户将编辑双精度,然后我的程序需要将其转换回十六进制。
感谢您的宝贵时间 :)
【问题讨论】:
-
十六进制字符串和双精度如何相关?字符串是双精度的二进制内存布局的表示吗?什么编码? IEEE?
-
抱歉,IEEE 754 造成混淆。字符串是双精度的十六进制表示。
-
大端还是小端?
-
其实。我真的很抱歉,这是大端。
-
"413DF3EBA463B0" 只有 14 个字符。您需要另外两个作为双精度的内部表示。哪边?
标签: c++ qt floating-point hex double