Android ndk 在android应用程序的本机端正确打印Double
我有一个ndk方法:Android ndk 在android应用程序的本机端正确打印Double,android-ndk,java-native-interface,double,format-specifiers,Android Ndk,Java Native Interface,Double,Format Specifiers,我有一个ndk方法: #define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG, DEBUG_TAG, __VA_ARGS__) _getDecimalDouble4(JNIEnv *env, jobject this, jdouble doubleval) { LOGD("NDK:LC: Native double [%E]", doubleval); } 输入1.23456789128E8的输出似乎总是: "NDK:LC:
#define LOGD(...) __android_log_print(ANDROID_LOG_DEBUG, DEBUG_TAG, __VA_ARGS__)
_getDecimalDouble4(JNIEnv *env, jobject this, jdouble doubleval)
{
LOGD("NDK:LC: Native double [%E]", doubleval);
}
输入1.23456789128E8的输出似乎总是:
"NDK:LC: Native double [6.138557E-314]"
如何显示精确值?在Android上,jdouble相当于double。这个函数在Java代码中是如何声明的;将双大写改为双大写。一个是对象,一个是双精度浮点值。@fadden解决了这个问题。谢谢