Difference between revisions of "Enum Type/de"
m (Fixed syntax highlighting; deleted category included in page template) |
|||
(15 intermediate revisions by 4 users not shown) | |||
Line 1: | Line 1: | ||
{{Enum Type}} | {{Enum Type}} | ||
− | Wertebereich: | + | |
− | bei 0 .. 255 Zeichen ist der [[Data type/de|Datentyp]] [[Byte/de|Byte]] | + | Zurück zu den [[Data type/de|Datentypen]]. |
− | bei 255 .. 65535 Zeichen ist der | + | |
− | über 65635 Zeichen ist der | + | |
− | Speicherbedarf: abhängig vom | + | Wertebereich: |
− | Eigenschaft:<br> | + | |
− | Zusätzlich kann für den | + | bei 0 .. 255 Zeichen ist der [[Data type/de|Datentyp]] automatisch [[Byte/de|Byte]] |
− | bei 0 .. 255 Zeichen die Schalter für den | + | |
− | * {$ | + | bei 255 .. 65535 Zeichen ist der Datentyp automatisch [[Word/de|Word]] |
− | bei | + | |
− | * {$ | + | über 65635 Zeichen ist der Datentyp automatisch [[Longword/de|Longword]] |
− | bei | + | |
− | * {$Z4} oder {$PACKENUM 4} | + | Speicherbedarf: abhängig vom Datentyp und der Anzahl der Elemente. |
− | Die Werte der Aufzählung erhöhen sich | + | |
− | Beispiele für die Deklarierung des Datentyps Enum: | + | Eigenschaft: |
− | Die Werte der Aufzählung beginnen standardmäßig bei 0: | + | |
− | <syntaxhighlight> | + | Beim Datentyp '''Enum Type''' handelt es sich um eine Aufzählung ganzzahliger vorzeichenloser Konstanten.<br> |
+ | Zusätzlich kann für den Datentyp mit Hilfe des Schalters der zu verwendende vorzeichenlose Integer-Datentyp festgelegt werden. | ||
+ | |||
+ | bei 0 .. 255 Zeichen die Schalter für den Datentyp [[Byte/de|Byte]]: | ||
+ | |||
+ | * {$Z1} oder {$PACKENUM 1} | ||
+ | |||
+ | bei 255 .. 65535 Zeichen die Schalter für den Datentyp [[Word/de|Word]]: | ||
+ | |||
+ | * {$Z2} oder {$PACKENUM 2} | ||
+ | |||
+ | bei 65535 .. 4294967295 Zeichen ist der Datentyp [[Longword/de|Longword]]: | ||
+ | |||
+ | * {$Z4} oder {$PACKENUM 4} | ||
+ | |||
+ | Die Werte der Aufzählung erhöhen sich zum nächsten Element immer um 1. | ||
+ | |||
+ | Beispiele für die Deklarierung des Datentyps Enum: | ||
+ | |||
+ | Die Werte der Aufzählung beginnen standardmäßig bei 0: | ||
+ | |||
+ | <syntaxhighlight lang=pascal> | ||
Type | Type | ||
{$PACKENUM 2} | {$PACKENUM 2} | ||
LargeEnum = (Null, Eins, Zwei); | LargeEnum = (Null, Eins, Zwei); | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | Die Werte der Aufzählung beginnen standardmäßig bei 0, es | + | |
− | <syntaxhighlight> | + | Die Werte der Aufzählung beginnen standardmäßig bei 0, es sei denn, es wird der Aufzählung ein anderer Anfangswert zugewiesen. Dann beginnt die Zählung mit dem zugewiesenen Anfangswert. |
+ | |||
+ | <syntaxhighlight lang=pascal> | ||
Type | Type | ||
{$PACKENUM 4} | {$PACKENUM 4} | ||
Line 30: | Line 53: | ||
Wird mitten in der Aufzählung einem Element ein höherer Wert zugewiesen, dann wird ab diesem Wert weitergezählt. | Wird mitten in der Aufzählung einem Element ein höherer Wert zugewiesen, dann wird ab diesem Wert weitergezählt. | ||
− | <syntaxhighlight> | + | |
+ | <syntaxhighlight lang=pascal> | ||
Type | Type | ||
{$PACKENUM 1} | {$PACKENUM 1} | ||
MiddleEnum = (Null, Zehn := 10, Elf, Zwoelf); | MiddleEnum = (Null, Zehn := 10, Elf, Zwoelf); | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | Explizite (ausdrückliche) Verwendung des Datentyps Byte für die Aufzählung. | ||
+ | |||
+ | <syntaxhighlight lang=pascal> | ||
+ | Type | ||
+ | byte = (Null, Eins, Zwei); | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Beispiele für die Zuweisung des Datentyps Enum: | Beispiele für die Zuweisung des Datentyps Enum: | ||
− | <syntaxhighlight> | + | |
+ | <syntaxhighlight lang=pascal> | ||
Var | Var | ||
S : SmallEnum; | S : SmallEnum; | ||
Line 45: | Line 77: | ||
Beispiele für die Konvertierung des Datentyps Enum: | Beispiele für die Konvertierung des Datentyps Enum: | ||
− | <syntaxhighlight> | + | |
+ | <syntaxhighlight lang=pascal> | ||
Application.MessageBox(PChar(IntToStr(Qword(Ord(Sechs)))),'Konvertierung',MB_OK); | Application.MessageBox(PChar(IntToStr(Qword(Ord(Sechs)))),'Konvertierung',MB_OK); | ||
Application.MessageBox(PChar(IntToStr(Qword(Ord(S.Sechs)))),'Konvertierung',MB_OK); | Application.MessageBox(PChar(IntToStr(Qword(Ord(S.Sechs)))),'Konvertierung',MB_OK); | ||
</syntaxhighlight> | </syntaxhighlight> | ||
− | |||
− | |||
− | |||
− |
Latest revision as of 08:51, 14 February 2020
│
Deutsch (de) │
English (en) │
français (fr) │
Zurück zu den Datentypen.
Wertebereich:
bei 0 .. 255 Zeichen ist der Datentyp automatisch Byte
bei 255 .. 65535 Zeichen ist der Datentyp automatisch Word
über 65635 Zeichen ist der Datentyp automatisch Longword
Speicherbedarf: abhängig vom Datentyp und der Anzahl der Elemente.
Eigenschaft:
Beim Datentyp Enum Type handelt es sich um eine Aufzählung ganzzahliger vorzeichenloser Konstanten.
Zusätzlich kann für den Datentyp mit Hilfe des Schalters der zu verwendende vorzeichenlose Integer-Datentyp festgelegt werden.
bei 0 .. 255 Zeichen die Schalter für den Datentyp Byte:
- {$Z1} oder {$PACKENUM 1}
bei 255 .. 65535 Zeichen die Schalter für den Datentyp Word:
- {$Z2} oder {$PACKENUM 2}
bei 65535 .. 4294967295 Zeichen ist der Datentyp Longword:
- {$Z4} oder {$PACKENUM 4}
Die Werte der Aufzählung erhöhen sich zum nächsten Element immer um 1.
Beispiele für die Deklarierung des Datentyps Enum:
Die Werte der Aufzählung beginnen standardmäßig bei 0:
Type
{$PACKENUM 2}
LargeEnum = (Null, Eins, Zwei);
Die Werte der Aufzählung beginnen standardmäßig bei 0, es sei denn, es wird der Aufzählung ein anderer Anfangswert zugewiesen. Dann beginnt die Zählung mit dem zugewiesenen Anfangswert.
Type
{$PACKENUM 4}
SmallEnum = (Sechs := 6, Sieben, Acht);
Wird mitten in der Aufzählung einem Element ein höherer Wert zugewiesen, dann wird ab diesem Wert weitergezählt.
Type
{$PACKENUM 1}
MiddleEnum = (Null, Zehn := 10, Elf, Zwoelf);
Explizite (ausdrückliche) Verwendung des Datentyps Byte für die Aufzählung.
Type
byte = (Null, Eins, Zwei);
Beispiele für die Zuweisung des Datentyps Enum:
Var
S : SmallEnum;
M : MiddleEnum;
L : LargeEnum;
Beispiele für die Konvertierung des Datentyps Enum:
Application.MessageBox(PChar(IntToStr(Qword(Ord(Sechs)))),'Konvertierung',MB_OK);
Application.MessageBox(PChar(IntToStr(Qword(Ord(S.Sechs)))),'Konvertierung',MB_OK);