concatenate()

Die Systemfunktion vgLib.concatenate() verknüpft zwei Zeichenvariablen. Wenn zwei Zeichenvariablen verknüpft sind, tritt Folgendes ein:
  1. Alle nachfolgenden Leerzeichen oder Nullwerte werden aus der Zielzeichenfolge gelöscht.
  2. Der Quellenwert wird an den Wert angehängt, der während Schritt 1 produziert wird.
  3. Wenn die verknüpfte Ausgabe länger ist als der Zielparameter, wird die Ausgabe abgeschnitten. Wenn die Ausgabe kürzer ist als der Zielparameter, wird sie mit Leerzeichen gefüllt.

vgLib.concatenate() ist eine der vielen Funktionen, die zum Zweck der Kompatibilität mit früheren Versionen beibehalten wird. Neuer Code kann die Standard-EGL-Operatoren für diese Zwecke einsetzen.

Syntax

  vgLib.concatenate(
    target CHAR | DBCHAR | MBCHAR | UNICODE inOut,
    source CHAR | DBCHAR | MBCHAR | UNICODE in)
  returns (result INT)
target
Eine Zeichentypvariable, mit der die Inhalte von source verknüpft werden.
source
Eine Zeichentypvariable, die EGL mit target verknüpft.
result
Einer der folgenden ganzzahligen Werte:
-1
Die verknüpfte Zeichenfolge ist zu lang, um in das Zielfeld zu passen, und andere Zeichen als Nullwerte oder Leerzeichen werden vom Ergebnis abgeschnitten.
0
Die verknüpfte Zeichenfolge passt in das Zielfeld.

Beispiel

Im folgenden Beispiel werden zwei kürzere Zeichenfolgen verknüpft:

phrase, ormeme CHAR(7);
result INT;
phrase = "and/  ";
ormeme = "or";
result = vgLib.concatenate(phrase,ormeme);
if (result == 0)
    SysLib.writeStdout("***"+phrase+"***"); // phrase = "and/or "
end

Feedback