OK, du willst was effektives? Dann pack den String in einen PChar und wander mit dem Pointer durch die Zeichenkette. Ungefähr so (jetzt mal ungetestet):
Delphi-Quellcode:
var
p : PChar;
i : Integer;
begin
i := 0;
// Eventuell noch Speicher reservieren
p := 'Hello World, good-bye universe.'
while (p^ <> #0) do
begin
if p^ = #32 then Inc(i);
Inc(p);
end;