ログ内のJNIの代わりにprintf関数で印刷することができます

#include <jni.h中> 
の#include <string>に
する#include <stdio.hに> 
する#include <STDLIB.H> 
の#include "logs.h" 


CHAR * FA(){ 
    // CHAR * PA = "123456"; / / PAポインタスタック領域、「123456」、一定の領域において、関数呼び出しポインタ変数PAが放出された後

    のchar * p = NULL; 
    //ポインタ変数pを4バイトスタック上に割り当てられ
    、P =(CHAR *) malloc関数(100); 
    //この関数は、本明細書にヒープメモリ領域とPに割り当てられたアドレスまで開かれる
    (「1234566をwudunxiong」、P)strcpyのを; 

    //ヒープ領域に文字列定数領域をコピー
    戻りP ; 
    //呼び出し関数FBに戻る()、比較的FA、FBを話すこと呼び出す関数である、主相対的に言って、
    // FA()、FB()関数と呼ばれる
} 

のchar * FB(){ 
    CHAR * = NULL PSTR; 
    PSTR FA =(); 
    戻りPSTR; 
    //これは、ポインタ変数PSTRを終了
}

ボイドselectSort(INT * P、int型N){ 
    // LOGE( "%D \ n"は、P [0])。
    int型TMP; 
    以下のために(INT I = 0、I <N - 1; I ++){ 
        ため(INT J = I + 1、J <nであり、j ++){ 
            IF(P [i]が> P [J]){ 
                TMP = P [I ]; 
                P [I] = P [J]。
                P [J] = TMP。
            } 
        } 
    } 
} 


のchar * getMem(CHAR ** P、INT N){ 
    * P =(CHAR *()はmalloc(N))。

    もし(* P == NULL)戻りNULL; 
    * Pを返します。
} 


ボイドdisplayArray(INT(* P)[4]、INT n)は{ 
    {ためには(; I <N I ++ INT iは= 0)
        のための(INT J = 0; J <4; J ++){ 
            //のprintf(」 %のD」、*(*(P + I)+ J))。
            LOGE( "%d個"、*(*(I + P)+ J)); 
        } 
        のputchar(10)。
    } 
} 

int型main_s(){ 
    LOGE( "はsizeof(CHAR *)は\%D = N"はsizeof(CHAR *))。
    LOGE( "はsizeof(ショア*)\%D = N"はsizeof(ショート*))。
    LOGE( "はsizeof(INT *)\%D = N"はsizeof(INT *))。
    LOGE( "のsizeof(長い長い*)%D \ = N"はsizeof(長い長いです*))。
    LOGE(、はsizeof(ダブル*) "はsizeof(ダブル*)は%D \ N =")。
    LOGE( "はsizeof(INT(* P)[5])%D \ N ="はsizeof(INT(*)[5]))。

    0を返します。
} 


のextern "C" JNIEXPORT JSTRING JNICALL 
Java_com_massky_chars_1s_MainActivity_stringFromJNI(
        JNIEnvの* ENV、
    std ::文字列こんにちは=「こんにちはC ++から」。 
    main_s()。
}
公開された351元の記事 ウォン称賛52 ビュー190 000 +

おすすめ

転載: blog.csdn.net/u014644594/article/details/104992992