[next] [prev] [prev-tail] [tail] [up]

#### CompareDWord

Declaration:
  function CompareDWord(var buf1,buf2;len:longint):longint;
Description:
  CompareDWord compares two memory regions buf1,buf2 on a DWord-per-DWord basis for a total of len DWords. (A DWord is 4 bytes).

  The function returns one of the following values:

  -1
    if buf1 and buf2 contain different DWords in the first len DWords, and the first such DWord is smaller in buf1 than the DWord at the same position in buf2.
  0
    if the first len DWords in buf1 and buf2 are equal.
  1
    if buf1 and buf2 contain different DWords in the first len DWords, and the first such DWord is larger in buf1 than the DWord at the same position in buf2.
Errors:
  None.
See also:
  CompareChar (468),CompareByte (466),CompareWord (472),

Listing: refex/ex101.pp

Program Example101;
{ Program to demonstrate the CompareDWord function. }
Const
ArraySize = 100;
HalfArraySize = ArraySize Div 2;
Var
Buf1,Buf2 : Array[1..ArraySize] of Dword;
I : longint;
Procedure CheckPos(Len : Longint);
Begin
Write('First ',Len,' DWords are ');
if CompareDWord(Buf1,Buf2,Len)<>0 then
Write('NOT ');
Writeln('equal');
end;
begin
For I:=1 to ArraySize do
begin
Buf1[i]:=I;
If I<=HalfArraySize Then
Buf2[I]:=I
else
Buf2[i]:=HalfArraySize-I;
end;
CheckPos(HalfArraySize div 2);
CheckPos(HalfArraySize);
CheckPos(HalfArraySize+1);
CheckPos(HalfArraySize + HalfArraySize Div 2);
end.

[next] [prev] [prev-tail] [front] [up]