C/C++中GetByteArrayElements使用区别
来源:互联网 发布:mysql数据库复制 编辑:程序博客网 时间:2024/05/23 00:24
jbyte *arr = env-> GetByteArrayElements(jarr, 0);
只有C++时才用
在C中的写法应该是
jbyte * arr = (*env)-> GetByteArrayElements(env,jarr, NULL);
---------------------------------------------------------------
在C的定义中,env是一个两级指针,而在C++的定义中,env是个一级指针
我的arrayso.c 为:
只有C++时才用
在C中的写法应该是
jbyte * arr = (*env)-> GetByteArrayElements(env,jarr, NULL);
---------------------------------------------------------------
在C的定义中,env是一个两级指针,而在C++的定义中,env是个一级指针
-------------------------------------------------------------
arraywq.h为:
/* DO NOT EDIT THIS FILE - it is machine generated */ #include <jni.h> /* Header for class arraywq */ #ifndef _Included_arraywq #define _Included_arraywq #ifdef __cplusplus extern "C " { #endif /* * Class: arraywq * Method: showarray * Signature: (I[B)I */ JNIEXPORT jint JNICALL Java_arraywq_showarray (JNIEnv *, jclass, jint, jbyteArray); #ifdef __cplusplus } #endif #endif
我的arrayso.c 为:
#include "arraywq.h " #include <stdio.h> void add_0(char * c,int len) { int i; for(i=0;i <len;i++) *c++; *c++= '\0 '; } JNIEXPORT jint JNICALL Java_arraywq_showarray (JNIEnv *env, jclass obj, jint len, jbyteArray jarr) { jbyte * arr = (*env)-> GetByteArrayElements(env,jarr, 0); char * c=(char *)arr; add_0(c,len); printf( "%s\n ",c); return len; }
- C/C++中GetByteArrayElements使用区别
- C/C++中 . 和 -> 的使用区别
- c和c++中使用结构体的一点区别
- C和C++中使用结构体的一点区别
- objective-C 中使用@Class和 #import区别
- objective-C 中使用@Class和 #import区别
- objective-C 中使用@Class和 #import区别
- C与C++中struct使用的区别
- objective-C 中使用@Class和 #import区别
- objective-C 中使用@Class和 #import区别
- c和c++中使用结构体的一点区别
- objective-C 中使用@Class和 #import区别
- C与C++中struct使用的区别
- 在Object-C中使用@property和@synthesize的区别
- C和C++中struct使用的区别
- 转-C语言中使用指针与数组的区别
- C中.和->的区别
- C语言中&&,||,&,| 的区别
- vc6 和vs2008编码方式问题
- Linux 多线程文件读写操作 +实例
- _stdcall 和 _cdecl
- charindex()、like示例:
- org.apache.commons.lang.StringUtils
- C/C++中GetByteArrayElements使用区别
- App Store 状态列表
- 14.1 全文索引的介绍
- C# 隐藏TabPage的Page页
- 计算机的组成
- Why do I see "cpu soft lockup" messages in Red Hat Enterprise Linux on a Unisys E7600 or NEC 5800 Ex
- MSSQL (分布式)分区视图的创建及其应用
- oracle数据库基础学习
- 我的物联网梦想 ——“一家一颗芯”