将jdouble转换为C型C型

 2023-01-20    411  

问题描述

如何将java类型变量的jdouble转换为double类型的变量?

推荐答案

您不必这样做,这只是类似的类型:

将jdouble转换为C型C型

typedef double jdouble;

因此,不需要转换,一旦您拥有jdouble,就可以将其视为double.

参见例如此代码Standford的示例:

JNIEXPORT jdouble JNICALL Java_Summer_sum__DD
(JNIEnv *env, jobject jobj, jdouble j1, jdouble j2) {
    return j1 + j2;
}

添加是直接使用jdouble值完成的,信任编译器以找出如何生成所需的代码.

其他推荐答案

无需转换.我使用了一个简单的静态铸件.

jfieldID varPtr = env->GetFieldID(dataClass, "var", "D");
jdouble jdoubleVar = env->GetDoubleField(dataClass, varPtr);

double varDouble = static_cast<double>(jdoubleVar);

以上所述是小编给大家介绍的将jdouble转换为C型C型,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对77isp云服务器技术网的支持!

原文链接:https://77isp.com/post/25953.html

=========================================

https://77isp.com/ 为 “云服务器技术网” 唯一官方服务平台,请勿相信其他任何渠道。