您现在的位置是:网站首页> Android
JNI简单入门
- Android
- 2022-03-29
- 832人已阅读
摘要
java的数据类型和C++的对应关系(大部分可用,小部分需要根据实际情况调整),可能是由于内容开始是网络地址(http://...)完整的英文词截取后不能换行造成 为避免代码造成手机端排版的混乱,可适当增加文字描述,将代码往后推移
C++ | Java |
---|---|
char * | String |
word | short |
byte | byte |
byte[] | byte[] |
dword | int |
long | NativeLong |
Void * | Pointer |
lpvoid | Pointer |
lpDword | IntByReference |
HWND | HWND |
char[] | byte[] |
byte * | Pointer |
Java和C的数据类型对照表
Java | 类型 | C类型原生表现 |
---|---|---|
boolean | int | 32位整数(可定制) |
byte | char | 8位整数 |
char | wchar_t | 平台依赖 |
short | short | 16位整数 |
int | int | 32位整数 |
long | long,__int64 | 64位整数 |
float | float | 32位浮点数 |
double | double | 64位浮点数 |
Buffer/Pointer | pointer | 平台依赖(32或64位指针) |
pointer/array | 32或64位指针(参数/返回值)邻接内存(结构体成员) | |
String | char* | /0结束的数组(nativeencodingorjna.encoding) |
WString | wchar_t* | /0结束的数组(unicode) |
String[] | char** | /0结束的数组的数组 |
WString[] | wchar_t** | /0结束的宽字符数组的数组 |
Structure | struct*/struct |
指向结构体的指针(参数或返回值) (或者明确指定是结构体指针)结构体(结构体的成员) (或者明确指定是结构体) |
Union | union | 等同于结构体 |
Structure[] | struct[] | 结构体的数组,邻接内存 |
Callback |
|
Java函数指针或原生函数指针 |
NativeMapped | varies | 依赖于定义 |
NativeLong | long | 平台依赖(32或64位整数) |
PointerType | pointer | 和Pointer相同 |
上一篇:JNI详解