ID : 5522
WriteByteArray
構文
WriteByteArray(格納元変数,格納先配列 [,格納開始要素番号 [,格納バイト数 ]]
)
指定項目
- 格納元変数
- 格納先配列に格納する値を指定します。バリアント型の配列変数を除くすべての型のデータが指定できます。
- 格納先配列
- 格納先の配列をバリアント型データで指定します。
- 格納開始要素番号
- 格納先配列にデータを格納する際に、格納し始める要素番号を整数型データで指定します。省略可能で、省略時は0が指定されます。
- 格納バイト数
- 格納先配列にデータを格納する際のデータのバイト数を整数型データで指定します。格納元変数のサイズ(バイト数)まで指定可能です。省略可能で、省略時は-1が指定されます。-1が指定されると、格納元変数の全データが格納先配列に格納されます。
戻り値
格納先配列に格納したデータのバイト数を整数型データで返します。
解説
格納元変数の値を、格納先配列に、バイトの並び順に沿って1バイトずつ格納します。
格納の順番は、格納元変数の最下位バイトから最上位バイトを、格納先配列の要素番号の小さい要素から順に格納します。
たとえば、格納元変数が整数型であり、16進数で&H4030201(10進数では67305985)が格納されている場合、格納先配列には、要素番号0番から順に、1、2、3、4と格納されます。
格納元変数が、ベクトル型、ポジション型など、複数の要素を含む型の場合、要素の並び順に格納されます。
たとえば、ベクトル型はX, Y, Zと要素が並んでいるため、まずXの最下位バイトから順に最上位バイトが、次にYの最下位バイトから最上位バイトが、最後にZの最下位バイトから最上位バイトが格納されます。
各型の要素の並び順に関しては"データ型"を参照してください。
注意事項
格納先配列は、あらかじめCreateArrayなどで一次元配列にしておく必要はありません。WriteByteArray実行時に実際に格納するバイト数分の1次元配列として初期化され、その後、格納先配列の値が格納されます。
用例
'!TITLE "Byte配列への変換
'I[0]、I[1]の変数をByte配列としてバイナリ送信する
Sub Main
Dim Var as Variant
Comm.Open 1
WriteByteArray I[0], Var, 0
WriteByteArray I[1], Var, 4
Comm.Output 1, Var
Comm.Close 1
End Sub
ID : 5522