Thread 123 -> 123.00 bzw. 1.2 -> 1.20 (19 answers)
Opened by Thomas at 2010-02-10 13:59

betterworld
 2010-02-10 16:14
#132541 #132541
User since
2003-08-21
2614 Artikel
ModeratorIn

user image
Lass die Werte mal direkt vor dem Vergleich mit Devel::Peek ausgeben, also so:
Code: (dl )
1
2
use Devel::Peek;
Dump($x);


Edit: Sorry, das bringt wohl auch nichts bei dem von murphy beschriebenen Floating-Point-Problem. Identifizieren koennte man es vielleicht, in dem man zudem noch unpack "H*", pack "F", $x ausgibt.

Edit2: Oder mit printf, wie in diesem Beispiel:
Code: (dl )
1
2
3
4
5
6
7
8
9
$ perl -lwe 'use Devel::Peek; my $x = 15; $x += .1 for 1..10; Dump $x; print $x; printf "%.20f\n", $x'
SV = PVNV(0x8151ff0) at 0x814f69c
REFCNT = 1
FLAGS = (PADBUSY,PADMY,NOK,pNOK)
IV = 15
NV = 16
PV = 0
16
15.99999999999999644729

Last edited: 2010-02-10 16:33:16 +0100 (CET)

View full thread 123 -> 123.00 bzw. 1.2 -> 1.20