我写了一个Raku
脚本来调用标准库erf
中的函数:C
use NativeCall;
sub erf(num64) returns num64 is native { * };
say [0.5,1,2,3,4,-0.9].map: {erf($_.Num)};
此脚本的输出
(0.5204998778130465 0.8427007929497149 0.9953222650189527 0.9999779095030014 0.9999999845827421 -0.7969082124228322)
与除 之外C
的所有值的输出匹配。[0.5,1,2,3,4,-0.9]
4
对于输出while给出. 4
_C
1.000000
Raku
0.9999999845827421
要测试 in 的输出4
,请C
运行以下代码:
#include <stdio.h> // Including header file for printf function
#include <math.h> // Including header file for erf function
int main (){
double param, result;
param = 4.0;
result = erf(param);
printf("erf (%f) = %f\n", param, result);
return 0;
}
知道发生了什么吗?我也需要1.0
从 Raku 输出。