Sign in Join
FPDoc Onlineexperiment

IndexDWord function

In unit System

Search for a DWord value in a memory range.

Declaration

pascal
function IndexDWord(const buf; len: SizeInt; b: DWord): SizeInt

Description

IndexDWord searches the memory at buf for maximally len positions for the DWord DW and returns it's position if it found one. If DW is not found then -1 is returned. The position is zero-based.

Errors

Buf and Len are not checked to see if they are valid values.

See also

Example: ex106

pascal
Program Example106;

{ Program to demonstrate the IndexDWord function. }

Const
  ArraySize = 1000;
  MaxValue = 1000;

Var
  Buffer : Array[1..ArraySize] of DWord;
  I,J : longint;
  K : DWord;

begin
  Randomize;
  For I:=1 To ArraySize do
    Buffer[I]:=Random(MaxValue);
  For I:=1 to 10 do
    begin
    K:=Random(MaxValue);
    J:=IndexDWord(Buffer,ArraySize,K);
    if J=-1 then
      Writeln('Value ',K,' was not found in buffer.')
    else
      Writeln('Found ',K,' at position ',J,' in buffer');
    end;
end.

An experiment, built from development snapshots. Not the official Free Pascal or Lazarus documentation.