c++ - 比较两个包含 double 的文件

标签 c++ c bash floating-point diff

我想检查两个包含 double 数字的文件是否相等。

我应该考虑接近的数字相等,例如最多 0.0001 的差异。

使用 C 编写测试器很容易,但是有更简单的方法吗?例如bash 命令?

最佳答案

这是您可以做到的一种方法:

paste file1 file2  | awk '{d=$1-$2;if((d<0?-1*d:d)>0.0001) print $0 " " d }'

首先使用paste打印出相应的行。然后将它们传递给 awk 进行减法。计算绝对差异并检查它是否超过您的容差 0.00001。如果是,打印出两个值和差值。

关于c++ - 比较两个包含 double 的文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10409912/

相关文章:

c++ - 您将如何在 C++/C 中解出 x 的数学方程

c - 释放指向数组的指针时程序崩溃,为什么?

linux - 每 2 秒更新一次 Bash 命令(无需每次都重新运行代码)

C:转换函数指针以编辑可执行代码

c++ - 从二进制文件中读取 double 类型的数据

c++ - glCallList 上的 OpenMP 段错误的 GLFW3(以及 glfw 中的其他地方)

c# - 使用 DLL 在 C++ 和 C# 之间交换字符串

linux - 如何在 bash 中将其写在一行中

linux - 如何写 "bash script.sh argument "

c++ - nm 符号 "U"和 "T",这是什么意思?