首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Java编程语言中的数据类型如何映射到本地编程语言(如C和C++ )中的数据类型,特别是

Java编程语言中的数据类型如何映射到本地编程语言(如C和C++ )中的数据类型,特别是
EN

Stack Overflow用户
提问于 2013-10-07 05:41:41
回答 2查看 435关注 0票数 2

“程序员指南和规范”一书的第3章说:“原始类型的映射很简单”,我对这个句子有点困惑。由于我们知道c数据类型的大小是不确定的,它取决于程序运行的环境,复杂的.例如int类型的大小可以是2字节或4字节。但是java数据类型的大小是definite.the,int的大小是4个字节。

因此,jni如何清楚地映射java和c/c++之间的数据类型。

如有任何答案,将不胜感激!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-10-07 05:46:20

在C中,有一个名为stdint.h的模块,它定义了int64_tint32_t和friends类型,使映射变得“简单”。

但是您应该注意到,在任何特定的C实现中,都没有精确地指定普通旧int的大小。作者确实对“直截了当”这个词很不理解,并且假设您会把这个声明理解为“Java的int映射到C带符号的32位整数类型”。

票数 1
EN

Stack Overflow用户

发布于 2013-10-07 16:05:36

jni.h头定义了适当的基元类型: jint、jlong、jchar等等。声明这些值是为了匹配相应Java原语的大小。在您的JNI代码中使用这些。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19217785

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档