1

マネージ C++ コードを C# に移植しています。関数パラメーターがバイト配列であるコードを変換しようとしていますが、関数本体内では、構造ポインターに型キャストされ、関数全体で使用されます。

安全でない/ポインターを使用せずに、ネイティブデータ型をC#の構造にどのように型キャストしますか?

コード:

public byte[]   Mail( byte[]  mailbox, byte[] sst )
{
    pin_ptr<unsigned char>  header  =   &mailbox[0];
    PCMP_MAIL_HEADER        pHeader =   (PCMP_MAIL_HEADER)mailbox;
    int BodySize = (int) pHeader.MailLength;
    ...
}

PCMP_MAIL_HEADER は、ユーザー定義の構造体です。メールボックスをその構造に型キャストする必要があります。

4

0 に答える 0