AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

XE2 Unterschied bei Single Ausgabe zu D7

Ein Thema von Memex · begonnen am 6. Dez 2011 · letzter Beitrag vom 6. Dez 2011
 
Memex

Registriert seit: 21. Okt 2010
7 Beiträge
 
#1

XE2 Unterschied bei Single Ausgabe zu D7

  Alt 6. Dez 2011, 16:27
Delphi-Version: XE2
Hallo,

bei nachfolgendem Code bekomme ich Unterschiede zwischen D7 und XE2. Bei dem Single-Typ wird bei der formatierten Ausgabe bei XE2 falsch gerundet. Die Berechnung stimmt aber!

Code:
procedure TForm1.Button1Click(Sender: TObject);
var Code : integer;
    lTF : TextFile;
    lReal48 : Real48;
    lSingle : Single;
    lDouble : Double;

begin
  Edit1.Text := '0.01';
  AssignFile(lTF,'D:\Test.txt');
  try
    Rewrite(lTF);

    Val(Edit1.Text,lReal48,Code);
    Write(lTF,'Real48: '+ Edit1.Text + ' / 100 = ');
    Writeln(lTF,lReal48 / 100 :1:4);
    //D7 : result := 0.0001
    //XE2: result := 0.0001

    Val(Edit1.Text,lSingle,Code);
    Write(lTF,'Single: '+ Edit1.Text + ' / 100 = ');
    Writeln(lTF,lSingle / 100 :1:4);
    //D7 : result := 0.0001
    //XE2: result := 0.0000 <--!!!!

    Val(Edit1.Text,lDouble,Code);
    Write(lTF,'Double: '+ Edit1.Text + ' / 100 = ');
    Writeln(lTF,lDouble / 100 :1:4);
    //D7 : result := 0.0001
    //XE2: result := 0.0001


  finally
    CloseFile(lTF);
  end;
end;
Habt ihr dieses Problem auch schon bemerkt?

Der Code kommt in dem Projekt recht häufig vor... ein Workround ist also schwierig.

Mit freundlichen Grüßen,
Memex
  Mit Zitat antworten Zitat
 

 
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:51 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz