-1

Java コードのバイト配列に long 値を入れています。この(バイト配列)はネイティブ側コード(C++)に送信されます。この C++ コードでは、Java から送信された long 値を再構築する必要があります。

バイト配列とその中のすべてのバイトにアクセスして、長い値を取得するにはどうすればよいですか? 助けてください。

4

1 に答える 1

0

長い値の場合は次のようになります。

int64_t i;
memcpy(&i, transmittedByteArray, 8);
constexpr union { unsigned short s; unsigned char islittle;} chkendian{1};
if(chkendian.islittle)
    std::reverse((char*)&i,(char*)&i+8);
于 2016-12-13T14:30:09.610 に答える