Android jni 二维数组 传递
学习Android Jni时,一个二维 整数 数组的传递花了我好长时间,在网上查的资料都不全,当然最后是成功了,写在这里是为了自己记住,当然有人搜索到并利用了我会很高兴。
obj, jobjectArray qizidata,jint value1, jint
value2)
i,j;
qizi[1024][1024]; //固定数组,测试用
myarray;
size = (*env)->GetArrayLength(env, qizidata);
= 0; i < size &&
i<1024 ; i++)
myarray =
((*env)->GetObjectArrayElement(env, qizidata,
i));
int col =
(*env)->GetArrayLength(env,
myarray);
jint *coldata =
(*env)->GetIntArrayElements(env, (jintArray)myarray,
0 );
for (j=0; j<col
&& j <1024;
j++)
{
qizi[i][j]
= coldata[j];
}
(*env)->ReleaseIntArrayElements(env,
(jintArray)myarray, coldata,0 );
(qizi[0][0]+qizi[9][0]);
Java_com_marakana_NativeLib_GetIntArray
(JNIEnv *env, jobject obj, jint
x, jint y)
{
jobjectArray ret;
0;
0;
intArrCls = (*env)->FindClass(env, "[I");
NULL== intArrCls)
return NULL;
(*env)->NewObjectArray(env, x * y, intArrCls,
NULL);
tmp[1024];//固定数组,测试用,注意别溢出
= 0; i < x; i++) {
jintArray intArr =
(*env)->NewIntArray(env,y);
for (j = 0; j <
y; j++) {
tmp[j] = i + j;
}
(*env)->SetIntArrayRegion(env,intArr, 0, y,
tmp);
(*env)->SetObjectArrayElement(env,ret, i,
intArr);
(*env)->DeleteLocalRef(env,intArr);
ret;
c_languge syntax
size = (*env)->GetArrayLength(env, array);
(int i = 0; i < size; i++)
jarray myarray =
((*env)->GetObjectArrayElement(env, array,
i));
int leng =
(*env)->GetArrayLength(env, myarray);
printf("length: %dn",
leng);
for (int j = 0; j
< leng; j++)
{
jstring string =
((*env)->GetObjectArrayElement(env, myarray,
i));
const char * chars =
(*env)->GetStringUTFChars(env, string, 0);
printf("%s n", chars);
(*env)->ReleaseStringUTFChars(env,
string, chars);
}
}
Android jni 二维数组 传递的更多相关文章
- c++ 二维数组传递
c++ 二维数组传递 我们在传递二维数组时,对于新手来说,可能会存在某些问题,下面讲解几种传递方法 在讲解如何传递二维数组时,先看看如何动态new 二维数组 // 二维数组动态申请 int row , ...
- c语言二维数组传递
c语言二维数组传递,目前我总结三种方法,以及纠正一个不能使用的方法 /********************************* * 方法1: 第一维的长度可以不指定 * * 但必须指定第二维 ...
- c#二维数组传递与拷贝
定义 string[,] arr = new string[12, 31] 另一种string[][] ary = new string[5][];相当于一维数组 常量二维数组定义, 用readonl ...
- 二维数组的传输 (host <-> device)
前言 本文的目的很明确:介绍如何将二维数组传递进显存,以及如何将二维数组从显存传递回主机端. 实现步骤 1. 在显存中为二维数组开辟空间 2. 获取该二维数组在显存中的 pitch 值 (cudaMa ...
- [zt]C++二维数组讲解、二维数组的声明和初始化
定义: int *pia = new int[10]; // array of 10 uninitialized ints 此 new 表达式分配了一个含有 10 个 int 型元素的数组,并返回指向 ...
- 论C语言中二级指针和二维数组之间的区别
刚开始学习C语言的时候,觉得一个数组可以定义一个一级指针去访问,想当然的就觉得可以定义一个二级指针去访问二维数组.很显然这是错误的. 我们来看看C语言的数组在内存中的存储方式. 实际上C语言中的数组, ...
- 第六篇:二维数组的传输 (host <-> device)
前言 本文的目的很明确:介绍如何将二维数组传递进显存,以及如何将二维数组从显存传递回主机端. 实现步骤 1. 在显存中为二维数组开辟空间 2. 获取该二维数组在显存中的 pitch 值 (cudaMa ...
- android JNI 一维数组、二维数组的访问与使用
在JNI中访问JAVA类中的整型.浮点型.字符型的数据比较简单,举一个简单的例子,如下: //得到类名 jclass cls = (*env)->GetObjectClass(env, obj) ...
- Android开发实践:Java层与Jni层的数组传递
转载:http://www.linuxidc.com/Linux/2014-03/97561.htm Android开发中,经常会在Java代码与Jni层之间传递数组(byte[]),一个典型的应用是 ...
随机推荐
- ubuntu 14.04服务器上使用nginx搭建wordpress博客详解
过程详解 1.更新apt-get sudo apt-get update 2.安装nginx sudo apt-get install nginx 3.启动nginx sudo service ngi ...
- [AngularJS]Chapter 1 AnjularJS简介
创建一个完美的Web应用程序是很令人激动的,但是构建这样应用的复杂度也是不可思议的.我们Angular团队的目标就是去减轻构建这样AJAX应用的复杂度.在谷歌我们经历过各种复杂的应用创建工作比如:GM ...
- Eureka Server添加用户认证
Eureka Server添加用户认证 学习了:http://blog.csdn.net/liuchuanhong1/article/details/54729556 注意:1,需要使用 defaul ...
- 纯文本中识别URI地址并转换成HTML
问题 有一段纯文本text, 欲将其插入DOM节点div中. text中可能有超链接, 邮件地址等. 假设有, 识别之. 分析 假设仅仅是纯文本, 插入div中, 仅仅要将div.innerText设 ...
- ubuntu 休眠之后蓝牙鼠标无效果。
ubuntu链接蓝牙鼠标之后.左上角蓝牙标志左下角应该有一个锁的标志. 可是休眠之后,蓝牙鼠标失效,锁没有了,点击按键,出来锁之后,立即消失. 运行两次例如以下命令能够解决: sudo hciconf ...
- html屏蔽鼠标右键
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- java中去掉html标签
import java.util.regex.Matcher; import java.util.regex.Pattern; public class HTMLSpirit{ public ...
- Sobel算子及C++实现
Sobel 算子是一个离散的一阶微分算子,用来计算图像灰度函数的近似梯度. 在空间域上Sobel算子很容易实现,执行速度快,对部分噪声具有平滑作用,还能够提供较为精确的边缘方向信息,缺点是边缘定位精度 ...
- [codeforces 894 E] Ralph and Mushrooms 解题报告 (SCC+拓扑排序+DP)
题目链接:http://codeforces.com/problemset/problem/894/E 题目大意: $n$个点$m$条边的有向图,每条边有一个权值,可以重复走. 第$i$次走过某条边权 ...
- vue组件样式添加scoped属性之后,无法被父组件修改。或者无法在本组件修改element UI样式
在vue开发中,需要使用scoped属性避免样式的全局干扰,但是这样在父组件中是无法被修改的,不仅如此如果项目中用了UI框架比如element Ui,这个时候在本组件也无法修改样式,因为权重问题.但是 ...