Thema: Delphi Die ord() Funktion

Einzelnen Beitrag anzeigen

Benutzerbild von SirThornberry
SirThornberry
(Moderator)

Registriert seit: 23. Sep 2003
Ort: Bockwen
12.235 Beiträge
 
Delphi 2006 Professional
 
#2

Re: Die ord() Funktion

  Alt 4. Mär 2008, 17:49
die Ord Function führt einen cast durch. Jetzt denke ich allerdings das du das auch nicht verstehst.
Also:
Beim Computer gibt es Datenspeicher und darauf sind Bytes die aneinander gereiht da liegen.
Wie man diese jetzt interpretiert ist Sache des Programmierers. Du kannst hintereinander liegende Bytes als String, Wort, Kommazahl, kleine Ganzzahl, große Ganzzahl etc. interpretieren. Und Ord macht nichts anderes als den übergebenen Wert als Ordinalwert (Zahlenwert) zu interpretieren. Wenn du ord also ein 's' übergibst, ist das s ja auch nur ein Byte was in deinem Fall als Buchstabe interpretiert wird aber letztendlich ist es nur eine Ansammlung von Bits. Wenn du ord das s übergibst bekommst du die bits von 's' als zahl interpretiert zurück gegeben. Das gleich kannst du auch durch einen direkten cast erreichen:
Delphi-Quellcode:
zahl := byte('s'); //ein cast, man sagt das 's' als byte interpretiert werden soll
zahl := ord('s'); //funktionsaufruf - durch compilermagie/optimierung intern auch nur ein cast
umgekehrt geht es natürlich auch das du den speicher einer zahl als zeichen interpretierst und einer neuen Variablen zuweist:
zeichen := char(65); //ist glaub ich ein große A
Jens
Mit Source ist es wie mit Kunst - Hauptsache der Künstler versteht's
  Mit Zitat antworten Zitat