簡體   English   中英

perl打印浮點數的精度是多少?

[英]To what precision does perl print floating-point numbers?

my $num = log(1_000_000) / log(10);
print "num: $num\n";
print "int(num): " . int($num) . "\n";
print "sprintf(num): " . sprintf("%0.16f", $num) . "\n";

生產:

num: 6
int(num): 5
sprintf(num): 5.9999999999999991

perl 打印浮點數的精度是多少?

使用:v5.8.8為x86_64-linux-thread-multi構建

在對浮點數進行字符串化時,無論是打印還是其他方式,Perl通常使用float.h中的DBL_DIG或LDBL_DIG值或者編譯它們的limits.h文件。

這通常是perl將使用向下舍入的浮點類型的精度。 例如,如果使用典型的double類型,精度為53位= 15.95位,Perl通常用15位精度進行字符串化。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM