concatenateBytes()
vgLib.concatenateBytes() システム関数は、内容に関係なく 2 つの変数を連結します。
2 つの値を連結すると、以下が行われます。
- ターゲット値の末尾のスペースや NULL がすべて削除されます。
- ソース値が、ステップ 1 で作成された結果の値に追加されます。
- ステップ 2 で連結された出力がターゲット・パラメーターよりも長い場合は、出力が切り捨てられます。出力がターゲット・パラメーターより短い場合は、出力にスペースが埋め込まれます (出力が数値の場合でも)。
vgLib.concatenateBytes() は、以前のバージョンとの互換性の目的で維持される多くの関数の 1 つです。この意図から、新規のコードでは標準の EGL 演算子を使用できます。
構文
vgLib.concatenateBytes(
target HEX inOut,
source HEX inOut)
returns (result INT)
- target
- source の内容が連結される先の、HEX と参照互換性のある任意の値。
- source
- EGL により target に付加される、HEX と参照互換性がある任意の値。
- result
- 次のいずれかの整数値。
- -1
- 連結されたストリングがターゲット・フィールドに対して長すぎるため、NULL とスペース以外の文字が結果から切り捨てられました。
- 0
- 連結されたストリングがターゲット・フィールドに適合しました。
例
以下の例は、vgLib.concatenateBytes() 関数を示しています。
phrase, ormeme CHAR(7);
result INT;
phrase = "and/ ";
ormeme = "or";
result = vgLib.concatenateBytes(phrase,ormeme);
if (result == 0)
SysLib.writeStdout("***"+phrase+"***"); // phrase = "and/or "
end