// count words in a string using pointers // Pascal code used in a Delphi 3.0 program function WordsCount(s: string ): integer; var ps: PChar; nSpaces, n: integer; begin n := 0; // make it a string that ends with value zero s := s + #0; // point to start of string s ps := @s[ 1 ]; // keep loop going up to zero ending while( #0 <> ps^ ) do begin // checks for space = ' ' while((' ' = ps^) and (#0 <> ps^)) do begin inc( ps ); end; nSpaces := 0; while((' ' <> ps^) and (#0 <> ps^)) do begin inc(nSpaces); inc(ps); end; if (nSpaces > 0) then begin inc( n ); end; end; Result := n; end;