java jni 数据类型_java JNI数据类型对照表
1.了解JNI中JAVA类型与C/C++的映射关系JAVA类型本地类型JNI中自定义类型描述
intlongjint/jsizesigned 32 bits
long_int64jlongsigned 64 bits
bytesigned charjbytesigned 8 bits
booleanunsigned charjbooleanunsigned 8 bits
charunsigned shortjcharunsigned 16 bits
shortshortjshortsigned 16 bits
floatfloatjfloat32 bits
doubledoublejdouble64 bits
voidvoidvoidN/A
2.引用类型对照表

JNI规范定义的函数签名信息格式如下:
(参数1类型标示参数2类型标示......参数n类型标示)返回值类型标示
实际上这些字符是与函数的参数类型一一对应的。
“()” 中的字符表示参数,后面的则代表返回值。例如”()V” 就表示 void Func();
“(II)V” 表示 void Func(int, int);
值得注意的一点是,当参数类型是引用数据类型时,
其格式是“L包名;”其中包名中的“.”换成“/”,
所以(Ljava/lang/String;Ljava/lang/String;)V 表示 void Func(String,String);
如果 JAVA 函数位于一个嵌入类,则用$作为类名间的分隔符。
例如 “(Ljava/lang/String;Landroid/os/FileUtils$FileStatus;)Z”
VvoidvoidN/A
Zjbooleanboolean8 unsigned
Ijintint32
Jjlonglong64
Djdoubledouble64
Fjfloatfloat32
Bjbytebyte8
Cjcharchar16 unsigned
Sjshortshort16
[IjintArrayint[]
[FjfloatArrayfloat[]
[BjbyteArraybyte[]
[CjcharArraychar[]
[SjshortArrayshort[]
[DjdoubleArraydouble[]
[JjlongArraylong[]
[ZjbooleanArrayBoolean[]
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)