Difference between revisions of "Data type/de"

From Free Pascal wiki
(Zeiger / Pointer)
(Zeiger / Pointer)
Line 84: Line 84:
  
 
=Zeiger / Pointer=
 
=Zeiger / Pointer=
* [[Pointer/de|Pointer]] - maximale Größe: Longint oder Int64
+
* [[Pointer/de|Pointer]] - Größe: Longint oder Int64
  
 
=Klassen und Objekte=
 
=Klassen und Objekte=

Revision as of 19:04, 10 September 2012

Deutsch (de) English (en) español (es) français (fr) Bahasa Indonesia (id) italiano (it) русский (ru)

Ein Datentyp ist eine Vorlage für ein Datenfeld / Variable.
Der Datentyp eines Datenfeldes bestimmt, wie der Inhalt eines Datenfeldes von Compiler und Prozessor zu interpretieren sind.
Die Sichtbarkeit von Datenfeldern / Variablen hängt vom Ort Ihrer Bekanntmachung / Deklaration ab.

Diese Seite bietet eine Auswahl von Datentypen.

Ganzzahlige Datentypen

Vorzeichenlose Typen

Datenfelder vom vorzeichenlosen ganzzahligen Datentyp können nur positive Ganzzahlen speichern.

  • Byte - Wertebereich: (0 .. 255)
  • Word - Wertebereich: (0 .. 65535)
  • Cardinal - entspricht dem Longword
  • Longword - Wertebereich: (0 .. 4294967295)
  • QWord - Wertebereich: (0 .. 18446744073709551615)

Vorzeichenbehaftete Typen

Datenfelder vom vorzeichenbehafteten ganzzahligen Datentyp können positive und negative Ganzzahlen speichern.

  • Shortint - Wertebereich: (-128 .. 127)
  • Smallint - Wertebereich: (-32768 .. 32767)
  • Integer - Wertebereich: entspricht entweder Smallint oder Longint (kommt auf den eingestellten Compilermodus an)
  • Longint - Wertebereich: (-2147483648 .. 2147483647)
  • Int64 - Wertebereich: (-9223372036854775808 .. 9223372036854775807)

Fliesskommatypen / Fliesspunkttypen

Datenfelder die vom Datentyp Fliesskomma sind können:

  1. positive und negative Ganzzahlen speichern
  2. positive und negative Fliesskommazahlen speichern
  • Real - Wertebereich: Plattform abhängig
  • Single - Wertebereich: (1.5E-45 .. 3.4E38)
  • Double - Wertebereich: (5.0E-324 .. 1.7E308)
  • Extended - Wertebereich: Plattform abhängig
  • Comp - Wertebereich: (-2E64+1 .. 2E63-1)
  • Currency - Wertebereich: (-922337203685477.5808 .. 922337203685477.5807)

Boolesche Datentypen

Datenfelder vom Datentyp Boolean speichern Wahrheitswerte.

  • Boolean - Wertebereich: (Wahr, Falsch)
  • Bytebool - Wertebereich: (Wahr, Falsch)
  • Wordbool - Wertebereich: (Wahr, Falsch)
  • Longbool - Wertebereich: (Wahr, Falsch)

Aufzählungstypen (Enummeration Types)

Datenfelder vom Datentyp 'Enummeration Type' sind eine Aufzählung ganzzahliger vorzeichenloser Konstanten.

  • Enum Type - Wertebereich: (ganzzahlige Datentypen)

Zeichentypen

Zeichentypen, bei denen ein Zeichen durch ein Byte codiert wird

  • Char - feste Länge: 1 Zeichen, Darstellung: 1 Zeichen
  • ShortString - maximale Länge: 255 Zeichen
  • String - maximale Länge: Shortstring oder Ansistring (kommt auf den verwendeten Compilerswitch an)
  • PChar - Zeiger auf einen Nullterminierten String ohne Längenbegrenzung
  • AnsiString - keine Längenbegrenzung
  • PAnsiChar - Zeiger auf einen Nullterminierten String ohne Längenbegrenzung

Zeichentypen, bei denen ein Zeichen durch zwei oder vier Byte codiert wird.

(Die Kodierung des dargestellten Zeichens durch 2 oder 4 Zeichen ist vom verwendeten Betriebssystem abhängig)

  • WideChar - feste Länge: 2 oder 4 Zeichen, Darstellung: 1 Zeichen
  • WideString - keine Längenbegrenzung
  • PWideChar - Zeiger auf einen Nullterminierten WideString ohne Längenbegrenzung
  • UnicodeChar - feste Länge: 2 oder 4 Zeichen, Darstellung: 1 Zeichen
  • UnicodeString - keine Längenbegrenzung
  • PUnicodeChar - Zeiger auf einen Nullterminierten UnicodeString ohne Längenbegrenzung

Varianttypen

Konstanten

Datenfeldern vom Datentyp Const kann nur einmal und zwar zum Zeitpunkt ihrer Erstellung ein Wert zugewiesen werden. Danach ist ein ändern des Wertes nicht möglich.

  • Untypisierte Konstanten
    • Const - es können nur einfache Datentypen verwendet werden.
  • Typisierte Konstanten
    • Const - es können einfache Datentypen sowie Records und Arrays verwendet werden
  • Resource Strings
    • Resourcestring - dient der sprachspezifischen Beschriftung von Menüs (stehen nicht in allen Compilermodi zur Verfügung)

Strukturtypen

  • Array - die Größe des Array hängt von der Art und der Anzahl der verwendeten Elemente ab
  • Record - eine Kombination der obigen Datentypen (zusammengefasst)
  • Set - eine Kollektion von zugehörigen Elementen; die Größe hängt von der Anzahl der Elemente ab

Zeiger / Pointer

  • Pointer - Größe: Longint oder Int64

Klassen und Objekte

  • Object - unter Turbopascal 5.5 für DOS entwickelt und ein Vorläufer des Typs Class
  • Class - unter Delphi 1.0 für Windows entwickelt und ist ein Nachfolger des Typs Object



--Olaf 17:04, 5 September 2012 (UTC)