AnsiStrings benutzen ja jetzt 4 Bytes = 1 Integer um die Länge zu speichern, deswegen geht s[0] nicht.
So ähnlich geht es aber immer noch:
Delphi-Quellcode:
function Len(const s: string): Integer;
begin
if Pointer(s) = nil then
Result := 0
else
Result := PInteger(Cardinal(s) - 4)^;
end;