就近在研究jni,在C++中写了这么个方法,一调用就报错

jstring jni_wallet_testJNI(JNIEnv env, jobject thiz, jstring fromJavaString)
{
char *a = NULL;
jstringTostr(env, fromJavaString, &a);
LOGI("Line %d", LINE);
char b[] = "这里是C层,接收来自java的数据:";
LOGI("char b : %s Line %d", b,__LINE__);
// strcat(b,a);//加上这句就崩了
LOGI("char b : %s Line %d",b, LINE);
jstring jstr;
LOGI("Line %d", LINE);
strToJString(env, (const int8u
) b, &jstr);
LOGI("Line %d", LINE);
return jstr;
}

jstringTostr(env, fromJavaString, &a);jstring转string的操作是不是有问题,为什么把指向指针a的地址传进去,函数形参是不是char* &类型的,是不是只传a进去就可以了,再后面打印下a试试

jni的函数名要按规则来。

https://m.baidu.com/from=1086k/bd_page_type=1/ssid=0/uid=0/pu=usm%402%2Csz%40320_1002%2Cta%40iphone_2_5.1_2_7.0/baiduid=D5D2789B1B7DAB81A9EFDC52EB4BD6BF/w=0_10_/t=iphone/l=3/tc?ref=www_iphone&lid=10081162379052707904&order=1&fm=alop&tj=www_normal_1_0_10_title&vit=osres&m=8&srd=1&cltj=cloud_title&asres=1&nt=wnor&title=Android%E4%B8%ADJNI%E7%9A%84%E4%BD%BF%E7%94%A8%E6%96%B9%E6%B3%95-__Shadow-%E5%8D%9A%E5%AE%A2%E5%9B%AD&dict=30&w_qd=IlPT2AEptyoA_yiYIkOvJCowfwzNKq&sec=18123&di=05168f5531d5dde4&bdenc=1&tch=124.525.270.148.1.374&nsrc=IlPT2AEptyoA_yixCFOxXnANedT62v3IEQGG_ytK1DK6mlrte4viZQRAYD0gRHaIJ9Cb9m3QgcVMhiGu0VAo7RF2u_9Ss79q7UfcbOnq6RO0HRwYfgBq1sL4V_&eqid=8be77bc57e77f0001000000058799bed&wd=&clk_info=%7B%22srcid%22%3A%221599%22%2C%22tplname%22%3A%22www_normal%22%2C%22t%22%3A1484364786053%2C%22xpath%22%3A%22div-a-h3%22%7D