Byte配列から2Byteずつ切り出してIntegerの配列に詰めなおすには?

解決


Ken  2005-06-09 20:00:18  No: 122378

こんにちは。Kenです。

Byte配列で受け取れるデータ列があるのですが、実際はそのうち
2Byteを一つのデータとして扱いたいのです。

このような場合、やっぱりMoveMemoryでByte配列の要素を一つずつ
取り出して、Longの配列なりに入れなおすしか手は無いのでしょうか?

データ量が多いので、なるべくこの手は避けたいのですが・・

ご指南、よろしくお願いします。


魔界の仮面弁士  2005-06-09 20:28:02  No: 122379

VB6ですよね。
2Byteなら、LongではなくIntegerなのでは。

> このような場合、やっぱりMoveMemoryでByte配列の要素を一つずつ
> 取り出して、Longの配列なりに入れなおすしか手は無いのでしょうか?
Byte配列を、Integer配列にMoveMemoryすればよいのでは。


Ken  2005-06-09 21:36:18  No: 122380

>魔界の仮面弁士
さっそくのお返事ありがとうございます。

>VB6ですよね。
>2Byteなら、LongではなくIntegerなのでは。
ここ、記述ミスでした。
ご指摘の通りLongではなくInteger型です。

>Byte配列を、Integer配列にMoveMemoryすればよいのでは。
ああ、配列全体をMoveMemoryできるのですね。
それならば要素数に関係なく処理は早く済みそうです。

こんな感じでしょうか?
MoveMemory IntArray ByteArray Len       'LenはByteArrayの要素数


Ken  2005-06-10 01:23:38  No: 122381

あ、解決にチェック入れるの忘れてました。
失礼。


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加