Einzelnen Beitrag anzeigen

marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#8

Re: verzweifle an fließkommazahlen....:-(

  Alt 28. Dez 2005, 21:00
Ich versuche gerade zu verstehen, was du da eigentlich machst. Du suchst einen Integerwert im Hauptspeicher eines anderen Programms? Dazu besorgst du dir den Speicherinhalt in großen Blöcken. Du scheinst davon auszugehen, dass dein Integer-Wert als Double mit festem Alignment gespeichert ist. Darüberhinaus gibt es noch die Fallstricke, auf die dich Amateurprofi hingewiesen hat.

Wenn ein binärer Vergleich zulässig ist, dann kannst du deine Schleife über das Array dadurch beschleunigen, dass du einen Zeiger schiebst:

Delphi-Quellcode:
var
  pd: PDouble;
  d: Double;
  i: integer;
begin
  d := 123456;
  pd := @buffer[1];
  for i := 1 to 100000 do // beachte die Obergrenze
  begin
    if pd^ = d
      then Break
      else Inc(pd);
  end;
  // d gefunden bei index i, wenn i <= 1000000
end;
marabu

Letzten Kommentar präzisiert - wegen Klaus...
  Mit Zitat antworten Zitat