Hallo,
ein String ist wie ein Array of Char aufgebaut, nur dass das erste Zeichen mit dem Index 1 beginnt.
Das erste Zeichen aus einem String bekommst du also so:
Delphi-Quellcode:
var s: String; c: Char;
c := s[1];
Die Funktion Ord() benötigt als Argument einen ordinalen Typ, Char ist ein ordinaler Typ, String aber nicht.
ShowMessage(IntToStr(Ord(string[1]))) funktioniert also
Was du vor hast, könnte man auch einfach so machen (Kopieren und temporärer String wird überflüssig).
Delphi-Quellcode:
var temp: Char; zeichen: Byte;
for i := 1 to Length(s) do
begin
temp := s[i];
zeichen := Ord(temp);
ShowMessage(IntToStr(zeichen));
end;
oder auch einfach:
Delphi-Quellcode:
for i := 1 to Length(s) do
ShowMessage(IntToStr(Ord(s[i])));
Übrigens:
Char = AnsiChar