java 调用 dll,返回byte[],发现最后几位不对,而且长度多了2,请高手指点,谢谢!
public   native   static byte[] encrypt(byte[] s1,int len1,byte[] s2,int len2);C++:
    jbyteArray jarrRet = env->NewByteArray( len2 );
    strncpy( szByte2, outbuf,len2 );
    env->SetByteArrayRegion( jarrRet, 0, len2, (jbyte *)szByte2 );    return jarrRet;是不是哪里写错了?
另:
jbyte* pJbyte1 = env->GetByteArrayElements(jb1, 0);
.......
env->ReleaseByteArrayElements(jarrRet, pJbyte1, 0); //是否需要释放?