Difference between revisions of "Data type/de"

From Lazarus wiki
Jump to navigationJump to search
m
Line 1: Line 1:
 
{{Data type}}
 
{{Data type}}
 
+
<br>
 +
Zurück zur [[Lazarus_Documentation/de|Lazarus Dokumentation]].<br>
 +
<br>
 
=Allgemeines zu Datentypen=
 
=Allgemeines zu Datentypen=
 
Diese Seite bietet eine Auswahl von Datentypen.<br>
 
Diese Seite bietet eine Auswahl von Datentypen.<br>
Line 6: Line 8:
 
Der Datentyp eines Datenfeldes bestimmt, wie der Inhalt eines Datenfeldes von Compiler und Prozessor zu interpretieren sind.<br>
 
Der Datentyp eines Datenfeldes bestimmt, wie der Inhalt eines Datenfeldes von Compiler und Prozessor zu interpretieren sind.<br>
 
Die [[datatype visibility/de|Sichtbarkeit]] von [[Data field/de|Datenfeldern]] hängt vom Ort Ihrer Bekanntmachung (Deklaration) ab.
 
Die [[datatype visibility/de|Sichtbarkeit]] von [[Data field/de|Datenfeldern]] hängt vom Ort Ihrer Bekanntmachung (Deklaration) ab.
<br><br>
+
<br>
 
+
<br>
 
=Ganzzahlige Datentypen=
 
=Ganzzahlige Datentypen=
 
==Vorzeichenlose Typen==
 
==Vorzeichenlose Typen==
Line 16: Line 18:
 
* [[Longword/de|Longword]] - Wertebereich: (0 .. 4294967295)
 
* [[Longword/de|Longword]] - Wertebereich: (0 .. 4294967295)
 
* [[QWord/de|QWord]] - Wertebereich:  (0 .. 18446744073709551615)
 
* [[QWord/de|QWord]] - Wertebereich:  (0 .. 18446744073709551615)
 
+
<br>
 
==Vorzeichenbehaftete Typen==
 
==Vorzeichenbehaftete Typen==
 
[[Data field/de|Datenfelder]] vom vorzeichenbehafteten ganzzahligen Datentyp können positive '''und''' negative Ganzzahlen speichern.
 
[[Data field/de|Datenfelder]] vom vorzeichenbehafteten ganzzahligen Datentyp können positive '''und''' negative Ganzzahlen speichern.
Line 24: Line 26:
 
* [[Longint/de|Longint]] - Wertebereich: (-2147483648 .. 2147483647)
 
* [[Longint/de|Longint]] - Wertebereich: (-2147483648 .. 2147483647)
 
* [[Int64/de|Int64]] - Wertebereich: (-9223372036854775808 .. 9223372036854775807)
 
* [[Int64/de|Int64]] - Wertebereich: (-9223372036854775808 .. 9223372036854775807)
 
+
<br>
 
=Fliesskommatypen / Fliesspunkttypen=
 
=Fliesskommatypen / Fliesspunkttypen=
 
[[Data field/de|Datenfelder]] die vom Datentyp Fliesskomma sind können:
 
[[Data field/de|Datenfelder]] die vom Datentyp Fliesskomma sind können:
 
# positive '''und''' negative Ganzzahlen speichern
 
# positive '''und''' negative Ganzzahlen speichern
 
# positive '''und''' negative Fliesskommazahlen speichern
 
# positive '''und''' negative Fliesskommazahlen speichern
 
+
<br>
 
* [[Real/de|Real]] - Wertebereich: Plattform abhängig
 
* [[Real/de|Real]] - Wertebereich: Plattform abhängig
 
* [[Single/de|Single]] - Wertebereich: (1.5E-45 .. 3.4E38)
 
* [[Single/de|Single]] - Wertebereich: (1.5E-45 .. 3.4E38)
Line 36: Line 38:
 
* [[Comp/de|Comp]] - Wertebereich: (-2E64+1 .. 2E63-1)
 
* [[Comp/de|Comp]] - Wertebereich: (-2E64+1 .. 2E63-1)
 
* [[Currency/de|Currency]] - Wertebereich: (-922337203685477.5808 .. 922337203685477.5807)
 
* [[Currency/de|Currency]] - Wertebereich: (-922337203685477.5808 .. 922337203685477.5807)
 
+
<br>
 
=Boolesche Datentypen=
 
=Boolesche Datentypen=
 
[[Data field/de|Datenfelder]] vom Datentyp Boolean speichern Wahrheitswerte.
 
[[Data field/de|Datenfelder]] vom Datentyp Boolean speichern Wahrheitswerte.
Line 43: Line 45:
 
* [[Wordbool/de|Wordbool]] - Wertebereich: (Wahr, Falsch)
 
* [[Wordbool/de|Wordbool]] - Wertebereich: (Wahr, Falsch)
 
* [[Longbool/de|Longbool]] - Wertebereich: (Wahr, Falsch)
 
* [[Longbool/de|Longbool]] - Wertebereich: (Wahr, Falsch)
 
+
<br>
 
=Aufzählungstypen (Enummeration Types)=
 
=Aufzählungstypen (Enummeration Types)=
 
[[Data field/de|Datenfelder]] vom Datentyp 'Enummeration Type' sind eine Aufzählung ganzzahliger vorzeichenloser Konstanten.
 
[[Data field/de|Datenfelder]] vom Datentyp 'Enummeration Type' sind eine Aufzählung ganzzahliger vorzeichenloser Konstanten.
 
* [[Enum Type/de|Enum Type]] - Wertebereich: (ganzzahlige Datentypen)
 
* [[Enum Type/de|Enum Type]] - Wertebereich: (ganzzahlige Datentypen)
 
+
<br>
 
=Zeichentypen=
 
=Zeichentypen=
 
==Zeichentypen, bei denen ein Zeichen durch ein Byte codiert wird==
 
==Zeichentypen, bei denen ein Zeichen durch ein Byte codiert wird==
Line 56: Line 58:
 
* [[Ansistring/de|AnsiString]] - keine Längenbegrenzung
 
* [[Ansistring/de|AnsiString]] - keine Längenbegrenzung
 
* [[Pansichar/de|PAnsiChar]] - Zeiger auf einen Nullterminierten String ohne Längenbegrenzung
 
* [[Pansichar/de|PAnsiChar]] - Zeiger auf einen Nullterminierten String ohne Längenbegrenzung
 
+
<br>
 
== Zeichentypen, bei denen ein Zeichen durch zwei oder vier Byte codiert wird.==
 
== Zeichentypen, bei denen ein Zeichen durch zwei oder vier Byte codiert wird.==
 
(Die [[Stringkodierung|Kodierung]] des dargestellten Zeichens durch 2 oder 4 Zeichen ist vom verwendeten Betriebssystem abhängig)<br>
 
(Die [[Stringkodierung|Kodierung]] des dargestellten Zeichens durch 2 oder 4 Zeichen ist vom verwendeten Betriebssystem abhängig)<br>
Line 65: Line 67:
 
* [[Unicodestring/de|UnicodeString]] - keine Längenbegrenzung
 
* [[Unicodestring/de|UnicodeString]] - keine Längenbegrenzung
 
* [[Punicodechar/de|PUnicodeChar]] - Zeiger auf einen Nullterminierten UnicodeString ohne Längenbegrenzung
 
* [[Punicodechar/de|PUnicodeChar]] - Zeiger auf einen Nullterminierten UnicodeString ohne Längenbegrenzung
 
+
<br>
 
=Varianttypen=
 
=Varianttypen=
 
*[[Variant/de|Variant]]
 
*[[Variant/de|Variant]]
 
*[[Olevariant/de|OleVariant]]
 
*[[Olevariant/de|OleVariant]]
 
+
<br>
 
=Konstanten=
 
=Konstanten=
 
[[Data field/de|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.
 
[[Data field/de|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.
Line 78: Line 80:
 
*Resource Strings
 
*Resource Strings
 
**[[Resourcestring|Resourcestring]] - dient der sprachspezifischen Beschriftung von Menüs (stehen nicht in allen Compilermodi zur Verfügung)
 
**[[Resourcestring|Resourcestring]] - dient der sprachspezifischen Beschriftung von Menüs (stehen nicht in allen Compilermodi zur Verfügung)
 
+
<br>
 
=Strukturtypen=
 
=Strukturtypen=
 
* [[Array/de|Array]] - die Größe des Array hängt von der Art und der Anzahl der verwendeten Elemente ab
 
* [[Array/de|Array]] - die Größe des Array hängt von der Art und der Anzahl der verwendeten Elemente ab
 
* [[Record/de|Record]] - eine Kombination der obigen Datentypen (zusammengefasst)
 
* [[Record/de|Record]] - eine Kombination der obigen Datentypen (zusammengefasst)
 
* [[Set/de|Set]] - eine Menge von Elementen des Datentyps Char; die Größe des Set hängt von der Anzahl der Elemente ab
 
* [[Set/de|Set]] - eine Menge von Elementen des Datentyps Char; die Größe des Set hängt von der Anzahl der Elemente ab
 
+
<br>
 
=Zeiger / Pointer=
 
=Zeiger / Pointer=
 
* [[Pointer/de|Pointer]] - Größe: Longint oder Int64
 
* [[Pointer/de|Pointer]] - Größe: Longint oder Int64
 
+
<br>
 
=Klassen und Objekte=
 
=Klassen und Objekte=
 
* [[Object/de|Object]] - unter Turbopascal 5.5 für DOS entwickelt und ein Vorläufer des Typs Class
 
* [[Object/de|Object]] - unter Turbopascal 5.5 für DOS entwickelt und ein Vorläufer des Typs Class
Line 92: Line 94:
 
<br>
 
<br>
 
<br>
 
<br>
--[[User:Olaf|Olaf]] 17:21, 12 September 2012 (UTC)
+
--[[User:Olaf|Olaf]] 17:18, 4 October 2012 (UTC)
 
[[Category:Pascal]]
 
[[Category:Pascal]]

Revision as of 19:18, 4 October 2012

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

Zurück zur Lazarus Dokumentation.

Allgemeines zu Datentypen

Diese Seite bietet eine Auswahl von Datentypen.
Ein Datentyp ist eine Vorlage für ein Datenfeld.
Der Datentyp eines Datenfeldes bestimmt, wie der Inhalt eines Datenfeldes von Compiler und Prozessor zu interpretieren sind.
Die Sichtbarkeit von Datenfeldern hängt vom Ort Ihrer Bekanntmachung (Deklaration) ab.

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 Menge von Elementen des Datentyps Char; die Größe des Set 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:18, 4 October 2012 (UTC)