Programmiersprache Pascal

Zeichenketten-Operatoren

Standard Pascal

Standard Pascal besitzt keinen Datentyp STRING und keine Zeichenketten-Operatoren.


Extended Pascal

Extended Pascal verfügt über einen Operator zur Arbeit mit Größen vom Typ STRING:

  +    Verkettung
Beispiel:
  VAR s1, s2, s : STRING(10);

  s1 := 'Feier';
  s2 := 'Abend';
  s := s1 + s2;        { liefert  "FeierAbend"  }
Der Verkettungsoperator kann auch auf Größen vom Typ PACKED ARRAY[...] OF CHAR angewendet werden.
Da bei diesem Datentyp allerdings keine Information vorliegt, wieviele Zeichen wirklich belegt sind, muß die Verkettung anders erfolgen als beim Typ STRING:
Der Inhalt der Speicherbereiche wird ganz formal aneinander gehängt.

Beispiel:

  VAR z1, z2, z : PACKED ARRAY[1..10] OF CHAR;
      zz : PACKED ARRAY[1..20] OF CHAR;

  zz := z1 + z2;       { liefert  "Feier     Abend     "  }
  z := z1 + z2;        { liefert Programmausnahme wegen Überschreitung 
                         der Array-Grenzen  -  oder eventuell
                         "Feier     "  }
Bemerkung:
Mit einem ungepackten ARRAY[...] OF CHAR sind auf diese Weise keine Verkettungen möglich.


Turbo Pascal, Delphi, XL Pascal

Der Verkettungsoperator + kann wie in Extended Pascal eingesetzt werden.
Zu beachten sind allerdings syntaktische Unterschiede bei der Anwendung von STRING und die unterschiedliche interne Realisierung.



P. Böhme, 21.08.1996