Difference between revisions of "Enum Type/de"

From Free Pascal wiki
Jump to navigationJump to search
m
Line 1: Line 1:
 
{{Enum Type}}
 
{{Enum Type}}
 
+
<br>
 +
Zurück zu den [[Data type/de|Datentypen]].<br>
 +
<br>
 
Wertebereich:<br>
 
Wertebereich:<br>
 
bei 0 .. 255 Zeichen ist der [[Data type/de|Datentyp]] automatisch [[Byte/de|Byte]]<br>
 
bei 0 .. 255 Zeichen ist der [[Data type/de|Datentyp]] automatisch [[Byte/de|Byte]]<br>
Line 29: Line 31:
 
   SmallEnum = (Sechs := 6, Sieben, Acht);  
 
   SmallEnum = (Sechs := 6, Sieben, Acht);  
 
</syntaxhighlight>
 
</syntaxhighlight>
 
+
<br>
 
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>
Line 36: Line 38:
 
   MiddleEnum = (Null, Zehn := 10, Elf, Zwoelf);
 
   MiddleEnum = (Null, Zehn := 10, Elf, Zwoelf);
 
</syntaxhighlight>
 
</syntaxhighlight>
 
+
<br>
 
Beispiele für die Zuweisung des Datentyps Enum:
 
Beispiele für die Zuweisung des Datentyps Enum:
 
<syntaxhighlight>
 
<syntaxhighlight>
Line 44: Line 46:
 
   L : LargeEnum;
 
   L : LargeEnum;
 
</syntaxhighlight>
 
</syntaxhighlight>
 
+
<br>
 
Beispiele für die Konvertierung des Datentyps Enum:
 
Beispiele für die Konvertierung des Datentyps Enum:
 
<syntaxhighlight>
 
<syntaxhighlight>
Line 52: Line 54:
 
<br>
 
<br>
 
<br>
 
<br>
--[[User:Olaf|Olaf]] 17:51, 24 August 2012 (UTC)
+
--[[User:Olaf|Olaf]] 16:55, 4 October 2012 (UTC)
 
[[Category:Pascal]]
 
[[Category:Pascal]]

Revision as of 18:55, 4 October 2012

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 Word:

  • {$Z2} oder {$PACKENUM 2}

bei 0 .. 255 Zeichen die Schalter für den Datentyp Longword:

  • {$Z4} oder {$PACKENUM 4}

bei 255 .. 65535 Zeichen ist der Datentyp Longword:

  • {$Z4} oder {$PACKENUM 4}

Die Werte der Aufzählung erhöhen sich zu 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 seidenn es wird der Aufzählung ein anderer Anfangswert zugewiesen. Dann beginnt die Zählung mit dem zugwiesenen 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);


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);



--Olaf 16:55, 4 October 2012 (UTC)