java与C语言的数据类型对应

Java和C数据类型的对应表如下:

Java 类型

C 类型

原生表现

 boolean

 int

 32位整数 (可定制)

 byte

 char 

 8位整数

 char

 wchar_t

 平台依赖

 short

 short

 16位整数

 int

 int

 32位整数

 long

long long, __int64

 64位整数

 float

 float

 32位浮点数

 double

 double

 64位浮点数

 Buffer/Pointer

 pointer

 平台依赖(32或 64位指针)

 [] (基本类型的数组)

 pointer/array

32或 64位指针(参数/返回值)

邻接内存(结构体成员)

 String

 char*

/0结束的数组 (native encoding or jna.encoding)

 WString

 wchar_t*

 /0结束的数组(unicode)

 String[]

 char**

 /0结束的数组的数组

 WString[]

 wchar_t**

 /0结束的宽字符数组的数组

 Structure

 struct*/struct

指向结构体的指针 (参数或返回值) (或者明确指定是结构体指针)
结构体(结构体的成员) (或者明确指定是结构体)

 Union

union 

 等同于结构体

 Structure[]

 struct[]

 结构体的数组,邻接内存

 Callback

  (*fp)()

 Java函数指针或原生函数指针

 NativeMapped

 varies

 依赖于定义

 NativeLong

 long

 平台依赖(32或64位整数)

 PointerType

 pointer

 和 Pointer相同

 

你可能感兴趣的:(java,jna)