floating-point相关内容

可变参数函数(va_arg)不适用于浮点数?

我有一个带有浮点参数的可变参数函数.为什么它不起作用? va_arg(arg, float) 解决方案 对应于 ... 的函数的参数在传递给可变参数函数之前提升.char 和 short 提升为 int,float 提升为 double 等. 6.5.2.2.7 函数原型声明器中的省略号会导致参数类型转换在最后一个声明的参数之后停止.默认参数提升是在尾随参数上执行的. 原因是早期 ..
发布时间:2022-01-09 10:43:26 其他开发

浮点数的散列函数

我目前正在用 C++ 实现一个哈希表,我正在尝试为浮点数创建一个哈希函数... 我打算通过填充十进制数将浮点数视为整数,但后来我意识到我可能会遇到大数字溢出... 有没有很好的方法来散列浮点数? 你不必直接给我函数,但我想看看/理解不同的概念...... 注意事项: 我不需要它真的很快,只要可能的话均匀分布即可. 我已经读到,由于计算速度的原因,不应该对浮点数进 ..
发布时间:2022-01-09 10:42:51 C/C++开发

如何在 c 中产生 NaN 浮点数?

float f = (float)'a';如果(f 0){}别的{printf("NaN\n");} f 不会大于/等于/小于 0 如果它是 NaN. 但是首先如何产生这样的f呢? 我尝试了各种方法来生成 NaN,但都没有奏效.. 解决方案 使用浮点数,0.0/0.0 不是“除以零"错误;结果是 NaN. 这个 C 程序打印 -nan: #include ..
发布时间:2022-01-09 10:42:43 其他开发

浮点运算稳定吗?

我知道浮点数有精度,精度后面的数字不可靠. 但是,如果用于计算数字的方程式相同怎么办?我可以假设结果也一样吗? 例如,我们有两个浮点数 x 和 y.我们可以假设机器 1 的结果 x/y 与机器 2 的结果完全相同吗?IE.== 比较会返回 true 解决方案 但是,如果用于计算数字的方程式相同怎么办?我可以假设结果也一样吗? 不,不一定. 特别是,在某些情况下, ..
发布时间:2022-01-09 10:42:27 C#/.NET

何时发生下溢?

我遇到计算 1.77e-308/10 会触发下溢异常的情况,但计算 1.777e-308/10 不会.这很奇怪,因为: 下溢发生在浮点的真实结果时操作在幅度上小于(即更接近于零)比可表示为正常浮点数的最小值目标数据类型(来自算术下溢,维基百科) 换句话说,如果我们计算 x/y,其中 x 和 y 都是 double,那么如果 0 (最小正归一化double是2.2251e-308).因此 ..
发布时间:2022-01-09 10:42:18 其他开发

用 PHP 截断浮点数

当一个浮点数需要在浮点数后截断到某位时,事实证明这并不容易.例如,如果必须截断到该点之后的第二个数字,则数字应该是 45.8976 =>45.89, 0.0185 =>0.01 (点后第二位不按点后第三位四舍五入). round()、number_format()、sprintf()等函数将数字取整并打印出来 45.8976 =>45.90, 0.0185 =>0.02 我遇到了 ..
发布时间:2022-01-09 10:42:09 PHP

假设在 C 中使用 IEEE754 浮点数表示浮点数是否安全?

浮点是在 C 中定义的实现.因此没有任何保证. 我们的代码需要可移植,我们正在讨论是否可以在我们的协议中使用 IEEE754 浮点数.出于性能原因,如果我们在发送或接收数据时不必在定点格式之间来回转换,那就太好了. 虽然我知道平台和架构之间在 long 或 wchar_t 的大小方面可能存在差异.但我似乎找不到关于 float 和 double 的任何具体信息. 到目前为止,我发 ..
发布时间:2022-01-09 10:42:03 其他开发

JavaScript 中的整数

我是 Javascript 的初学者,如果我听起来很愚蠢,请原谅我,因为我从 W3Fools 学习了一些 Javascript(这些教程真的很难 -他们没有解释我想知道的任何事情,但我可能从我使用 C++ 的经验中猜到的一切). 我可能会切换到 MDN,但如果您可以推荐任何其他教程,那就是很棒. 无论如何,这是我的问题: 我刚刚阅读了几行 this,显然: JavaScri ..
发布时间:2022-01-09 10:41:56 前端开发

在 .net 中,如何在十进制和双精度之间进行选择

我们前几天在工作中讨论过这个问题,我希望有一个 Stackoverflow 问题我会向人们指出,所以就这样吧.) 有什么区别 和一个 十进制? 您应该在什么时候(在什么情况下)始终使用 Double? 什么时候(在什么情况下)您应该总是使用十进制? 在不属于上述两个阵营之一的情况下,需要考虑的驱动因素是什么? 有很多问题与这个问题重叠,但它们往往是在询问某人在特定情况下应该做什么 ..
发布时间:2022-01-09 10:41:48 C#/.NET

可以在不丢失重要性的情况下转换为二进制并返回十进制的最重要的十进制数字精度是 6 还是 7.225?

我遇到过两种不同的浮点数精度公式. ⌊(N-1) log10(2)⌋ = 6 位小数(单精度) 和 N log10(2) ≈7.225 个十进制数字(单精度) 其中 N = 24 有效位(单精度) 第一个公式位于“IEEE 标准的第 4 页顶部754 for Binary Floating-Point Arithmetic",由 W. Kahan 教授撰写. 第 ..

pandas 和 numpy 的意思不同

我有一个 MEMS IMU,我一直在其上收集数据,我正在使用 pandas 从中获取一些统计数据.每个周期收集 6 个 32 位浮点数.对于给定的收集运行,数据速率是固定的.数据速率在 100Hz 和 1000Hz 之间变化,采集时间长达 72 小时.数据保存在一个平面二进制文件中.我是这样读取数据的: 将 numpy 导入为 np将熊猫导入为 pddataType=np.dtype([('a' ..
发布时间:2022-01-09 10:41:34 Python

用 C 序列化 double 和 float

如何在 C 中序列化双精度和浮点数? 我有以下用于序列化 short、int 和 char 的代码. unsigned char * serialize_char(unsigned char *buffer, char value){缓冲区[0] = 值;返回缓冲区+ 1;}unsigned char * serialize_int(unsigned char *buffer, int v ..
发布时间:2022-01-09 10:41:21 其他开发

用于确定两个数字在舍入到 n 个有效十进制数字时是否几乎相等的函数

我被要求测试第 3 方提供的库.众所周知,该库精确到 n 个有效数字.任何不太重要的错误都可以安全地忽略.我想写一个函数来帮助我比较结果: def 几乎相等(a, b, sigfig=5): 此函数的目的是确定两个浮点数(a 和 b)是否近似相等.如果 a==b(完全匹配)或者如果 a 和 b 在以十进制形式写入时舍入到 sigfig 有效数字时具有相同的值,则该函数将返回 True. ..
发布时间:2022-01-09 10:40:57 Python

浮点位和严格的别名

我试图在不调用未定义行为的情况下从浮点数中提取位.这是我的第一次尝试: 无符号 foo(float x){无符号* u = (无符号*)&x;返回 *u;} 据我了解,由于严格的别名规则,这不能保证有效,对吧?如果使用字符指针进行中间步骤,它是否有效? 无符号条形(float x){char* c = (char*)&x;无符号* u = (无符号*)c;返回 *u;} 还是我必须自己提取 ..
发布时间:2022-01-09 10:40:51 C/C++开发

JavaScript中是否有可靠的方法来获取任意数字的小数位数?

请务必注意,我不是在寻找舍入函数.我正在寻找一个以任意数字的简化十进制表示形式返回小数位数的函数.也就是说,我们有以下内容: decimalPlaces(5555.0);//=>0小数位(5555);//=>0小数位(555.5);//=>1小数位(555.50);//=>1小数位(0.0000005);//=>7小数位(5e-7);//=>7小数位(0.00000055);//=>8小数位(5 ..
发布时间:2022-01-09 10:40:43 前端开发

C++ 浮点到整数类型的转换

在 C++ 中将浮点类型的数据转换为整数有哪些不同的技术? #include 使用命名空间标准;结构数据库{int id,年龄;浮动工资;};int main() {结构数据库员工;员工.id = 1;员工年龄 = 23;员工薪水 = 45678.90;/*如何将此值打印为整数(不改变声明部分的薪水数据类型)?*/cout 解决方案 您正在寻找的是“类型转换".类型转换 ..