![]() |
Pointer vergleichen
Hi.
Habe folgendes Problem. Hier erst mal ein Codeschnipsel zur Übersicht:
Delphi-Quellcode:
Also, ich möchte zwei Pointer vergleichen. Habe gedacht ich mache es über
type
PRGBTripleArray = ^TRGBTripleArray; TRGBTripleArray = array [0..50000000] of TRGBTriple; [...] var x:integer; P1,P2:PRGBTripleArray; for x := 0 to Image1.Height -1 do begin P1 := Image1.ScanLine[x]; P2 := Image2.ScanLine[x]; [...] end;
Delphi-Quellcode:
aber das klappt nicht (selbst wenn sie nicht unterschiedlich sind ist es true. Vielleicht liegt das ja auch an meiner Art und Weise, wenn ja dann bitte ich um Hilfe :pale:
if P1 <> P2 then
[...] Als zweite Möglichkeit dachte ich mir die CompareMem Funktion, aber hier weiß ich nicht genau was ich als 3. Parameter angeben muss. Dachte eigentlich sowas wie
Delphi-Quellcode:
Aber dem war nicht so...Denn wenn man sich die Größe ausgeben lässt dann kommt 4 heraus. Und das Array ist wohl deutlich größer als 4... :(
sizeOf(P1);
Also, wie vergleiche ich die Pointer richtig? :gruebel: Enjoy, Flips |
Re: Pointer vergleichen
'Ne Verständnisfrage:
Wilst Du vergleichen, ob die Zeiger auf das selbe Array zeigen, oder ob die Arrays auf die sie zeigen die gleichen Werte enthalten? |
Re: Pointer vergleichen
Hi.
Ob die Arrays die gleichen Werte enthalten. Bin heute nicht mehr da, aber bitte trotzdem um Antwort(en) :) |
Re: Pointer vergleichen
Musst du eine weitere schleife nehmen oder
CompareMem(p1,p2,Image1.Canvas.Width*SizeOf(TRGBTr iple)) |
Re: Pointer vergleichen
Genial. wäre ich nie drauf gekommen. DANKE :bounce1: :dancer2: :dancer:
(Hast gerade eine Jufo-Arbeit unterstützt :wink: ) :thumb: :thumb: :thumb: :thumb: :dp: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:48 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