1

ネイティブメソッドでパラメーターを渡す質問を見てください。値を返すネイティブ メソッド Traverser (文字列パス) を書きたい場合はどうすればよいですか? ネイティブ メソッド Traverser (文字列パス) を返す C の long int 型を Java 型に変換するにはどうすればよいですか? たとえば、long int を jlong​​ に変換する方法は? メソッドを書きたい場合

public native long Traverser (String path),

このコードが正しいかどうか

JNIEXPORT jlong JNICALL Java_ParallelIndexation_Traverser(JNIEnv* env, jobject obj, jstring path) 
{ 
    long int result;
    const jbyte* path2 = env->GetStringUTFChars(path, nullptr); 
    if (path2 == nullptr) 
        return; 

    result=Traverser(path2); 

    env->ReleaseStringUTFChars(path, path2); 
    return result;
} 

?

それとも変換が必要ですか?

long int result 

jlong?

そして、代わりに Java_ParallelIndexation_Traverser が可能かどうか

long int result;

宣言する

jlong result;

?

4

0 に答える 0