bytebuffer
ネイティブメソッドを介して取得します。
はbytebuffer
3int
秒で始まり、その後 double のみが含まれます。3 番目int
は、その後に続く double の数を教えてくれます。
最初の 3 秒は読めますint
。
double を読み取ろうとするとコードがクラッシュするのはなぜですか?
最初の 3 つの整数を取得するための関連コード:
JNIEXPORT void JNICALL test(JNIEnv *env, jobject bytebuffer)
{
int * data = (int *)env->GetDirectBufferAddress(bytebuffer);
}
残りの double を取得するための関連コード:
double * rest = (double *)env->GetDirectBufferAddress(bytebuffer + 12);