当对具有多个数字的大数字的同一输入使用多个管道命令时,这如何影响数字的精度。它们会被截断吗?请注意,我说过多次,因为输入被使用然后重新使用。假设用于输入的函数不影响数字的精度,“管道 |”会影响数字的精度吗?影响吗?
另外,我对函数对大量数字的输入执行操作的假设是不正确的。如果函数包含 awk 那么我的假设是不正确的,那么“sed”呢?
答案1
这里我们有五个管道,正如您所看到的,输出的字符与中的字符完全相同:
$ echo '1.23456789012345678901234567890' | cat | cat | cat | cat | cat
1.23456789012345678901234567890
管道传输字符不变。管道中的任何内容都不关心一系列字符是否代表数字。对于管道来说,一切都只是一系列字符。
答案2
管道
cmd1 | cmd2
获取命令 cmd1 的标准输出,并将其原样提供给命令 cmd2 的标准输入。虽然它应用了缓冲(因此,如果您正在处理大型 I/O 并需要实时结果,请记住这一点),但它不会对其进行任何数学运算,并且不会以任何方式影响数字精度。