java 传递脚本给c_java – JNI将参数传递给c的方法
我有一個c文件myCppTest.cpp,它有方法
int myFunction(int argv, char **argc) {
}
和
myClass.java中的Java本機方法
public native int myFunction (int argv, char[][] argc);
使用javah -jni myClass生成頭文件后,我有頭
JNIEXPORT jint JNICALL Java_JPTokenizer_init
(JNIEnv *, jobject, jint, jobjectArray);
在我的myClass.cpp中,我定義了
JNIEXPORT jint JNICALL Java_JPTokenizer_init
(JNIEnv *env, jobject obj, jint argv, jobjectArray argc) {
//need to call int myFunction(int argv, char **argc) in myCppTest.cpp
}
我怎么能將參數“jint argv,jobjectArray argc”傳遞給“int argv,char ** argc”,謝謝.
編輯:我認為我犯了一個錯誤
myClass.java中的Java本機方法應該是
public native int init (int argv, char[][] argc);
所以有
JNIEXPORT jint JNICALL Java_myClass_init
(JNIEnv *, jobject, jint, jobjectArray);
在javah之后生成.
在myClass.cpp中,我有
JNIEXPORT jint JNICALL Java_myClass_init
(JNIEnv *env, jobject obj, jint argv, jobjectArray argc) {
//need to call int myFunction(int argv, char **argc) in myCppTest.cpp
}
總結
以上是生活随笔為你收集整理的java 传递脚本给c_java – JNI将参数传递给c的方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vue 导出excel表格-乱码问题
- 下一篇: 利用jQuery和bootstrap更改