Einzelnen Beitrag anzeigen

moelski

Registriert seit: 31. Jul 2004
1.110 Beiträge
 
Delphi 2010 Professional
 
#1

Float Anzeige im Debugger

  Alt 28. Mär 2009, 14:47
Moin !

Ich habe hier ein merkwürdiges Problem und keine Erklärung ...
Gegeben sei dieser Code:
Delphi-Quellcode:
procedure TForm1.Button5Click(Sender: TObject);
var inp : String;
    t1, t2 : Double;
begin
  inp := InputBox('Eingabe', '', '39900,4153345602');
  t1 := StrToFloat(inp);
  T2 := T1 * 2;
  ShowMessage(FloatToStr(t2));
end;
Nix besonderes. So wenn ich durchsteppe dann ist in INP z.B. der String '39900,4153345602' abgelegt.
In T1 zeigt mir der Debugger aber dann 39900,415335. (also abgerundet)
Für T2 habe ich bei den lokalen Variablen den Wert 79800,830669.
Das zeigt mir der Compiler auch wenn ich mit der Maus über die Variable fahre.

ShowMessage zeigt mir aber dann hinterher wieder 79800,8306691204.

Ist das nur eine Einschränkung vom Debugger / der IDE?

Hintergrund : Ich muss mit Datumswerten rechnen. Nun stellt sich mir aber die Frage ob der Compiler da die Werte nach StrToFloat abrundet (und somit mein Ergebnis falsch wird), oder ob das nur die Anzeige im Debugger betrifft.
Dominik Schmidt
Greetz Dominik

I love Delphi 2007/2010
  Mit Zitat antworten Zitat