long-double相关内容

微软为何放弃 long double 数据类型?

前段时间我写了一个程序,它使用了一些阶乘函数.我使用 long double 数据类型来支持“相对"大数字. 现在,我从代码块更改为 Visualstudio 2010,我想知道为什么我的程序不再工作,直到经过一些研究后我意识到 MS 已经放弃了 long double 数据类型.这有什么特别的原因吗?对我来说,这看起来像是技术方面的倒退. 有什么替代品吗?(我也会对 boost 库中 ..
发布时间:2022-01-09 10:24:58 C/C++开发

长双 vs 双

我知道各种数据类型的大小可能会根据我所在的系统而变化. 我使用 XP 32bits,并在 C++ 中使用 sizeof() 运算符,似乎 long double 是 12 个字节,而 double是 8. 然而,大多数主要资料表明 long double 是 8 个字节,因此范围与 double 相同. 我怎么有 12 个字节?如果 long double 确实是 12 个字节, ..
发布时间:2022-01-09 10:08:01 C/C++开发

Cout 长双发行

所以,我正在做一个 C++ 项目.我有一个 long double 类型的 var 并为其分配了一个类似“1.02"的值 然后,我尝试用cout打印出来,结果是:-0 我已经尝试使用 setprecision 并且我在谷歌搜索中发现了所有问题. 对此有什么解决方案? 示例代码: #include #include 使用命名空间标准;int main(int argc, c ..
发布时间:2021-12-26 15:12:47 C/C++开发

long double(特定于 GCC)和 __float128

我正在 GCC/x86 中寻找关于 long double 和 __float128 的详细信息(更多是出于好奇而不是因为实际问题). 可能很少有人会需要这些(我第一次真的需要double),但我想它仍然值得(和有趣)了解您的工具箱中有什么以及它是关于什么的. 有鉴于此,请原谅我有些悬而未决的问题: 有人能解释一下这些类型的实现原理和预期用途吗,也可以相互比较一下?例如,它们是“ ..
发布时间:2021-12-18 23:20:43 其他开发

printf 和 long double

我在 Windows 上使用带有 Netbeans 的最新 gcc.为什么 long double 不起作用?printf 说明符 %lf 错了吗? 代码: #include int main(void){浮船 = 32000.0;双重教唆 = 5.32e-5;长期双底= 5.32e-5;printf("%f 可以写成 %e\n", aboat, aboat);printf("%f 可以写 ..
发布时间:2021-12-18 22:30:55 其他开发

C - long double 和 printf 问题

我是新的 C 程序员,我正在做一个学校项目,我必须在其中估算值或 pi.我的教授说我们必须使用 long double 声明所有整数项.控制台显示我向用户询问给定函数的近似 pi 的项数.我输入 1 作为项数,但代码返回 -0.00000000 而不是 4.00000000. #include #include long double approx1(int 术语){长双 pi ..
发布时间:2021-06-21 19:02:42 其他开发

戈朗C长双

我正在将算法从C移植到Go.我有些困惑.这是C函数: void gauss_gen_cdf(uint64_t cdf [],长整数sigma,整数n){我long double s,d,e;//计算...对于(i = 1; i ..
发布时间:2021-05-11 19:47:28 其他开发

性能影响长双倍.为什么C选择默认的是64位而不是硬件的80位?

具体来说,我谈论的是x87 PC架构和C编译器. 我正在编写自己的解释器,而double数据类型背后的推理使我感到困惑.特别是在效率方面.有人可以解释为什么C选择了64位double而不是硬件本机的80位double吗?以及为什么硬件没有设置在80位的double上,因为它没有对齐?每种性能都有什么影响? 我想使用80位的double作为默认数字类型.但是编译器开发人员的选择让我担心,这不是 ..
发布时间:2020-11-08 22:17:29 其他开发

在MSVC中将扩展的精度浮点数(80位)转换为双精度(64位)

在MSVC win32/win64中从扩展精度浮点数(80位值,在某些编译器中也称为long double)到双精度(64位)转换的最可移植,最“正确"的方法是什么? /p> MSVC当前(截至2010年)假定long double是double的同义词. 我可能可以在内联汇编中编写fld/fstp汇编程序对,但是内联汇编不适用于MSVC中的win64代码.我是否需要将此汇编代码移动到单独 ..

替代Eigen :: MatrixXd typedef

用向量替换所有 Eigen :: MatrixXd s和 Eigen :: VectorXd s的最简单方法是什么和具有长双精度数元素的矩阵? 我的代码中的每个基本浮点变量的类型都是 long double 。另外,每次使用矩阵或向量时,我都会使用以下typedef。 typedef Eigen :: VectorXd Vec; typedef Eigen :: MatrixXd ..
发布时间:2020-10-27 23:32:45 C/C++开发

C ++中的long double是否是IEEE的binary128的实现?

来自 https://en.wikipedia.org/wiki/Long_double : 在C ++中, long double 指的是浮点数据类型,其精度通常比double-精确。但是,与C ++的其他浮点类型一样,它不一定映射到IEEE格式。 ... 对于GNU C编译器, long double 在x86处理器上具有80位扩展精度,而与该类型所使用的物理存储无关(可以为 ..
发布时间:2020-10-26 00:04:06 C/C++开发

两个"np.longdouble"之和产生很大的数值误差

早上好 我正在从FITS文件中读取两个数字(代表单个数字的整数和浮点部分),将它们转换为长双精度数(在我的机器中为128位),然后将其求和. 结果并不像我预期的那样使用128位浮点数.这是代码: a_int = np.longdouble(read_header_key(fits_file, 'I')) print "I %.25f" % a_int, type(a_int) a ..
发布时间:2020-05-18 22:35:36 Python

如何使用numpy longdouble dtype?

我正在尝试在我的Python代码中使用np.longdouble dtype,并试图使用NumPy来处理从使用Cython编译的C模块中获得的长双精度. 假设我这样做: import numpy as np print np.finfo(np.longdouble) Machine parameters for float128 --------------------------- ..
发布时间:2020-05-18 22:19:38 Python

考特长双刊

所以,我正在从事C ++项目.我有一个long double类型的var,并为其分配了一个值,例如"1.02" 然后,我尝试使用cout打印它,结果是:-0 我已经尝试使用setprecision,并且发现了所有问题. 对此有什么解决方案? 示例代码: #include #include using namespace std ..
发布时间:2020-05-17 01:51:56 C/C++开发

长双(GCC特定)和__float128

我在GCC / x86中寻找有关 long double 和 __ float128 的详细信息(更多的好奇心而不是因为实际的问题)。 很少有人会需要这些东西(我第一次只是真正的 需要一个 double ),但我想知道你在工具箱里有什么以及它是怎么回事仍然值得(也很有趣)。 有鉴于此,请原谅我有些开放性的问题: 有人可以解释实施的基本原理和预期用法这些类型,也是相互比较的?例如, ..
发布时间:2018-04-20 15:55:52 其他开发