IndexChar
Search for a character in a memory range.
Declaration
Source position: systemh.inc line 875
  function IndexChar(const buf; len: SizeInt; b: Char) : SizeInt;
Description
IndexChar searches the memory at buf for maximally len positions for the character b and returns it's position if it found one. If b is not found then -1 is returned. The position is zero-based. The IndexChar0 variant stops looking if a null character is found, and returns -1 in that case.
Errors
Buf and Len are not checked to see if they are valid values.
See also
| Name | Description | 
|---|---|
| CompareChar | compare 2 memory buffers character per character | 
| IndexByte | Search for a byte in a memory range. | 
| IndexDWord | Search for a DWord value in a memory range. | 
| IndexWord | Search for a WORD value in a memory range. | 
Example
Program Example108;
{ Program to demonstrate the IndexChar function. }
Const
  ArraySize = 1000;
  MaxValue = 26;
Var
  Buffer : Array[1..ArraySize] of Char;
  I,J : longint;
  K : Char;
begin
  Randomize;
  For I:=1 To ArraySize do
    Buffer[I]:=chr(Ord('A')+Random(MaxValue));
  For I:=1 to 10 do
    begin
    K:=chr(Ord('A')+Random(MaxValue));
    J:=IndexChar(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.