无论如何,Rcpp C++ 都会截断小数位

Rcpp C++ truncates decimal places no matter what

请参阅 R FAQ 7.31 和其中的参考资料——您在此处处于 "epsilon" 精度限制。

Rcpp 使用与 R 和所有其他基于 C 的程序相同的 double 类型。还有long double,但你可能真正想要的是一个任意/多精度的库,例如GNU mpfr which also has an R package Rmpfr