Wie kann ich jdouble
von Java-Typ Variable in double
Variable des Typs c konvertieren?Umwandlung von jdouble in double des Typs c
5
A
Antwort
5
Sie müssen nicht, es ist nur ein typedef wie so:
typedef double jdouble;
Also keine Konvertierung erforderlich ist, wenn Sie eine jdouble
haben Sie es nur als double
behandeln kann.
Siehe zum Beispiel der code example from Standford:
JNIEXPORT jdouble JNICALL Java_Summer_sum__DD
(JNIEnv *env, jobject jobj, jdouble j1, jdouble j2) {
return j1 + j2;
}
Die Zugabe erfolgt direkt mit den jdouble
Werten, die Compiler zu vertrauen, um herauszufinden, wie der erforderlichen Code zu generieren.
0
Keine Konvertierung erforderlich. Ich habe eine einfache statische Besetzung verwendet.
jfieldID varPtr = env->GetFieldID(dataClass, "var", "D");
jdouble jdoubleVar = env->GetDoubleField(dataClass, varPtr);
double varDouble = static_cast<double>(jdoubleVar);
Verwandte Themen
- 1. Umwandlung von String in Double funktioniert nicht in C#
- 2. Schnelle Umwandlung ohne Angabe des generischen Typs
- 3. Umwandlung von Double in Wertziffern und Exponent
- 4. Umwandlung Typ double [] []
- 5. Umwandlung int float/double
- 6. String in einen double-Variable in C Umwandlung
- 7. Wert des Typs '[Double]' kann nicht in den erwarteten Argumenttyp 'Double' konvertiert werden
- 8. Gruppieren von Sammlungen des gleichen Typs C#
- 9. C++ Array des Typs Klasse
- 10. Umwandlung Vorrang in C++
- 11. Umwandlung von String (Strtold) zu Long Double und Subtrahieren von Long Double gibt> Epsilon
- 12. Größe des Char-Typs in C#
- 13. C#: double [] [] und double [,]
- 14. Umwandlung von VB in C#
- 15. Umwandlung von Java auf C# -Code
- 16. ungültige Initialisierung von nichtkonstanten Referenz des Typs von einem rvalue des Typs '<geschweifte Initialisierungsliste>'
- 17. Wert des Typs 'UnsafePointer <Double>' kann nicht in den erwarteten Argumenttyp 'UnsafePointer <_>'
- 18. Konvertieren von Double in String in C++
- 19. Einen Prototyp des Typs "struct" deklarieren - C
- 20. Häufigste Anwendungen des dynamischen C# 4.0-Typs
- 21. Erstellen von Objekt des generischen Typs
- 22. C# Name des abgeleiteten Typs von Inside-Basis abrufen Klasse
- 23. Wie wird ein Wert des generischen Typs T zum Double ohne Boxing umgewandelt?
- 24. Verhindern implizite Umwandlung von numerischen Typen in Konstruktor in C++
- 25. Umwandlung von C zu MIPS
- 26. GDI + double buffering in C++
- 27. Convert Double in String C++?
- 28. Größe des generischen Typs
- 29. Illegaler Start des Typs beim Import?
- 30. Umwandlung von JSON-Objekt in C# Objekt
Ich hoffe, es ist wahr für alle Arten? _ctype_ ist gleich _jtype_ –
@ Programm-o-steve: Im Allgemeinen, nein. Java-Typen haben eine vorgegebene Breite, während C-Typen dies nicht tun. Mit anderen Worten, Javas "int" ist immer 32 Bits, während Cs "int" nicht ist. – NPE