Skip to main content

Datentyp: WSTRING

Gemäß der Norm IEC 61131-3 folgt der Datentyp WSTRING der UCS-2 Kodierung.

UCS-2-Kodierung bedeutet, dass ein Zeichen exakt mit der festen Länge von 2 Bytes kodiert wird. UCS-2 umfasst die Zeichen der Codepunkte von U+0000 bis U+D7FF und von U+E000 bis U+FFFF. Der String wird mit 0 terminiert.

Deklaration:

<variable name> : WSTRING( <size> ) := " <text> "

Die Größe <size> bestimmt die Stringlänge. Die Initialisierung erfolgt mit der Zeichenkette " <text> " . Die Kennzeichnung der Zeichenkette als WSTRING erfolgt mit doppelten Anführungszeichen. Die Angabe der Größe und die Initialisierung sind optional.

Wenn eine Variable des Datentyps WSTRING durch einen Reset der Applikation neu initialisiert wird, werden die nach dem abschließenden Null-Wort (WORD) des Initialwerts vorhandenen Byte-Paare des (alten) Strings nicht überschrieben. Dies gilt sowohl für die Initialisierung mit dem Initialisierungswert als auch für die Initialisierung mit dem Standard-Initialisierungswert 0.

Beispiel 213. Beispiel

Strings des Datentyps WSTRING benötigen 2 Bytes pro Zeichen. Bei Datentyp STRING wird nur 1 Byte pro Zeichen reserviert.

wsString : WSTRING := "This is a WSTRING";
sString : STRING := 'This is a STRING';

wsEmpty ist der Leerstring. Die Variable wsMoney mit dem Eurozeichen € hat die Größe 10. Nach 10 Zeichen wird abgeschnitten. Der Variablen wsHan wird das chinesisches Zeichen (U+7BE6) zugewiesen.

PROGRAM PRG_Money
VAR
    wsEmpty : WSTRING := ""; // The empty string
    wsMoney : WSTRING(10) := "12345678 € 123"; // String will be truncated
    wsMoney_2 : WSTRING(10) := "12345678 €";
    wsHan : WSTRING(10) := "篦"; // Chinese character U+/BE6
END_VAR