Difference between revisions of "subrange types/de"

From Free Pascal wiki
Jump to navigationJump to search
(Created page with "{{subrange types}} <br> Zurück zu den Datentypen.<br> <br> Wertebereich: Entspricht der von einem selbst festgelegten Definition<br> Speicherbedarf: Entspric...")
 
m (Fixed syntax highlighting; deleted category included in page template)
 
Line 1: Line 1:
 
{{subrange types}}
 
{{subrange types}}
<br>
+
 
Zurück zu den [[Data type/de|Datentypen]].<br>
+
 
<br>
+
Zurück zu den [[Data type/de|Datentypen]].
Wertebereich: Entspricht der von einem selbst festgelegten Definition<br>
+
 
Speicherbedarf: Entspricht dem zugrundeliegenden Basisdatentyp<br>
+
 
Eigenschaft:<br>
+
Wertebereich: Entspricht der von einem selbst festgelegten Definition
 +
 
 +
Speicherbedarf: Entspricht dem zugrundeliegenden Basisdatentyp
 +
 
 +
Eigenschaft:
 +
 
 
Ein Teilbereichstyp:
 
Ein Teilbereichstyp:
 +
 
* ist ein Teilbereich eines Basisdatentyps
 
* ist ein Teilbereich eines Basisdatentyps
 
* kann nur Werte aus dem Wertebereich aufnehmen, die bei seiner Definition festgelegt wurden
 
* kann nur Werte aus dem Wertebereich aufnehmen, die bei seiner Definition festgelegt wurden
<br>
+
 
Das Zuweisen anderer Werte führt beim Kompilieren des Programms zu Fehlermeldungen des Compilers und der Compiliervorgang wird abgebrochen. Das heißt, das ausführbare Programm wird nicht erstellt.<br><br>
+
Das Zuweisen anderer Werte führt beim Kompilieren des Programms zu Fehlermeldungen des Compilers und der Compiliervorgang wird abgebrochen. Das heißt, das ausführbare Programm wird nicht erstellt.
Es gibt zwei Möglichkeiten Teilbereichstypen zu definieren.<br>
+
 
 +
 
 +
Es gibt zwei Möglichkeiten Teilbereichstypen zu definieren.
 +
 
 
Variante 1:
 
Variante 1:
<syntaxhighlight>
+
 
 +
<syntaxhighlight lang=pascal>
 
  Var
 
  Var
 
   // Definiert einen ganzahligen Teilbereichstyp
 
   // Definiert einen ganzahligen Teilbereichstyp
Line 22: Line 32:
 
   tbBuchstabe1: 'A'..'Z';
 
   tbBuchstabe1: 'A'..'Z';
 
</syntaxhighlight>
 
</syntaxhighlight>
<br>
+
 
 
Variante 2:
 
Variante 2:
<syntaxhighlight>
+
 
 +
<syntaxhighlight lang=pascal>
 
  type
 
  type
 
   // Definiert einen ganzahligen Teilbereichstyp
 
   // Definiert einen ganzahligen Teilbereichstyp
Line 35: Line 46:
 
   tbBuchstabe2: TBuchstabe2;
 
   tbBuchstabe2: TBuchstabe2;
 
</syntaxhighlight>
 
</syntaxhighlight>
<br>
+
 
 
Beispiele für die Zuweisung gültiger Werte:
 
Beispiele für die Zuweisung gültiger Werte:
<syntaxhighlight>
+
 
 +
<syntaxhighlight lang=pascal>
 
   tbZahl1 := 10;
 
   tbZahl1 := 10;
 
   tbZahl1 := 123;
 
   tbZahl1 := 123;
Line 45: Line 57:
 
   tbBuchstabe2 := 'F';
 
   tbBuchstabe2 := 'F';
 
</syntaxhighlight>
 
</syntaxhighlight>
<br>
+
 
 
Beispiele für die Zuweisung ungültiger Werte:
 
Beispiele für die Zuweisung ungültiger Werte:
<syntaxhighlight>
+
 
 +
<syntaxhighlight lang=pascal>
 
   // der Wert liegt ausserhalb des Teilbereichs
 
   // der Wert liegt ausserhalb des Teilbereichs
 
   tbZahl1 := 9;
 
   tbZahl1 := 9;
Line 60: Line 73:
 
   tbZahl2 := '123';
 
   tbZahl2 := '123';
 
</syntaxhighlight>
 
</syntaxhighlight>
<br>
 
<br>
 
--[[User:Olaf|Olaf]] 09:11, 28 December 2013 (CET)
 
{{AutoCategory}}[[Category:Data types/de]]
 

Latest revision as of 02:28, 28 February 2020

Deutsch (de) English (en) français (fr)


Zurück zu den Datentypen.


Wertebereich: Entspricht der von einem selbst festgelegten Definition

Speicherbedarf: Entspricht dem zugrundeliegenden Basisdatentyp

Eigenschaft:

Ein Teilbereichstyp:

  • ist ein Teilbereich eines Basisdatentyps
  • kann nur Werte aus dem Wertebereich aufnehmen, die bei seiner Definition festgelegt wurden

Das Zuweisen anderer Werte führt beim Kompilieren des Programms zu Fehlermeldungen des Compilers und der Compiliervorgang wird abgebrochen. Das heißt, das ausführbare Programm wird nicht erstellt.


Es gibt zwei Möglichkeiten Teilbereichstypen zu definieren.

Variante 1:

 Var
   // Definiert einen ganzahligen Teilbereichstyp
   // im Wertebereich von 10 bis 123
   tbZahl1: 10..123;
   // Definiert einen zeichen Teilbereichstypen
   // im Wertebereich von A bis Z
   tbBuchstabe1: 'A'..'Z';

Variante 2:

 type
   // Definiert einen ganzahligen Teilbereichstyp
   // im Wertebereich von 10 bis 123
  TZahl2 = 10..123;
  TBuchstabe2 = 'A'..'Z';

 Var
   tbZahl2: TZahl2;
   tbBuchstabe2: TBuchstabe2;

Beispiele für die Zuweisung gültiger Werte:

   tbZahl1 := 10;
   tbZahl1 := 123;
   tbZahl2 := 10;
   tbZahl2 := 123;
   tbBuchstabe1 := 'F';
   tbBuchstabe2 := 'F';

Beispiele für die Zuweisung ungültiger Werte:

   // der Wert liegt ausserhalb des Teilbereichs
   tbZahl1 := 9;
   tbZahl2 := 124;
   tbBuchstabe1 := 'f';
   tbBuchstabe2 := 'f';
   // die Werte sind Stringliterale die einem ganzzahligen
   // Datentyp zugewiesen werden
   tbZahl1 := '10';
   tbZahl1 := '123';
   tbZahl2 := '10';
   tbZahl2 := '123';