-2

Android プロジェクト: 私は c を持っています。ファイル :

      /* DO NOT EDIT THIS FILE - it is machine generated */
     #include <com_jp_algi_Corelib.h>
           /* Header for class com_jp_algi_Corelib */
       #ifdef __cplusplus
       #define EXTCFUNC extern "C"
          #elseif
        #define EXTCFUNC extern
        #endif




        JNIEXPORT jfloatArray JNICALL Java_com_jp_algi_Corelib_vector
        (JNIEnv * env, jobject clazz, jfloatArray input){

      jfloatArray result;




              }

                jfloat* flt1 = env->GetFloatArrayElements(input,0)

; insiperd by : スタックフロー内の Eiegen android。

そしていくつかのエラーがあります:

C:/AA/FileBroswerActivity/jni/com_jp_algi_Corelib.c:23: error: 'env' undeclared here (not in a function)
C:/AA/FileBroswerActivity/jni/com_jp_algi_Corelib.c:23: error: 'input' undeclared here (not in a function)
/cygdrive/c/android-ndk-r5c/build/core/build-binary.mk:217: recipe for target `/cygdrive/c/AA/FileBroswerActivity/obj/local/armeabi/objs/com_jp_algi_Corelib/com_jp_algi_Corelib.o' failed
make: *** [/cygdrive/c/AA/FileBroswerActivity/obj/local/armeabi/objs/com_jp_algi_Corelib/com_jp_algi_Corelib.o] Error 1

16:52:03 ビルド完了 (672ms かかりました)

4

1 に答える 1

0

あなたの投稿は本当に不明確ですが、ファイルは次のようになります

  • .h ファイル:

    #include <jni.h>
    
    #ifdef __cplusplus
    extern "C" {
    #endif
    
    jfloatArray JNICALL Java_com_jp_algi_Corelib_vector(JNIEnv * env, jobject clazz, jfloatArray input);
    
    #ifdef __cplusplus
    }
    #endif
    
  • .cpp ファイル:

    #include "yourheader.h"
    
    #ifdef __cplusplus
    extern "C" {
    #endif
    
    jfloatArray JNICALL Java_com_jp_algi_Corelib_vector(JNIEnv * env, jobject clazz, jfloatArray input)
    {
      jfloat* flt1 = env->GetFloatArrayElements(input,0);
    }
    
    #ifdef __cplusplus
    }
    #endif
    

編集(編集後):

jfloat* flt1 = env->GetFloatArrayElements(input,0);

関数本体の外側です

于 2012-12-28T16:04:26.880 に答える