MEM.Compare (FUN)

 

Diese Funktion der CAA_Memory.library vergleicht "MemoryBlockA" mit "MemoryBlockB". Es werden "uiNumberOfBytes" Bytes überprüft.

Die Funktion gibt den Wert 0 zurück, wenn die Bereiche identisch sind. Andernfalls wird die Position der ersten festgestellten Abweichung zurückgegeben.

Eingang:

pMemoryBlockA

DWORD

Adresse vom Speicherbereich MemoryBlockA

pMemoryBlockB

DWORD

Adresse vom Speicherbereich MemoryBlockB

uiNumberOfBytes

UINT

Anzahl zu überprüfender Bytes

Ausgang:

MEM.Compare

UINT

Position von erster Abweichung, falls vorhanden; sonst 0.

Beispiel:

abyMemoryBlockA : ARRAY[0..9] OF BYTE := 0,1,2,3,4,5,6,7,8,9 ;

abyMemoryBlockB : ARRAY[0..9] OF BYTE := 0,1,2,0,4,5,6,7,8,9 ;

->

MEM.Compare(ADR(abyMemoryBlockA),

ADR(abyMemoryBlockB),10) = 4