Come posso convertire variabile di tipo java a variabile di tipo c?conversione da jdouble a double di tipo c
5
A
risposta
5
Non devi, è solo un typedef in questo modo:
typedef double jdouble;
Quindi non è necessaria alcuna conversione, una volta che hai un jdouble
si può trattare come un double
.
Vedi per esempio questo code example from Standford:
JNIEXPORT jdouble JNICALL Java_Summer_sum__DD
(JNIEnv *env, jobject jobj, jdouble j1, jdouble j2) {
return j1 + j2;
}
L'aggiunta viene effettuata direttamente con i valori jdouble
, confidando il compilatore di capire come generare il codice richiesto.
0
Non è necessaria alcuna conversione. Ho usato un semplice cast statico.
jfieldID varPtr = env->GetFieldID(dataClass, "var", "D");
jdouble jdoubleVar = env->GetDoubleField(dataClass, varPtr);
double varDouble = static_cast<double>(jdoubleVar);
Problemi correlati
- 1. Conversione da Delphi Real48 a C# double
- 2. Conversione di tipo da C a Java
- 3. C - malloc - conversione non valida da void * a double *
- 4. Conversione da double a float in Java
- 5. c'è comunque la conversione da Double a BigInteger?
- 6. La conversione da Obj C a C#
- 7. Conversione da Matlab a C++
- 8. Conversione da Ruby a C#
- 9. Conversione da C a MIPS
- 10. C++ - conversione deprecato da costante di stringa a 'char *'
- 11. C++ tipo problema di conversione
- 12. C#: double [] [] e double [,]
- 13. Spiegazione di fusione/conversione int/double in C#
- 14. C++ la conversione implicita da doppio a bool è pericolosa
- 15. convertire il vettore di tipo primitivo C++ nell'array primitivo di tipo java
- 16. Speedup Conversione da Matlab a C++
- 17. Problema di trasmissione da Int a Double
- 18. Prestazioni di trasmissione da size_t a double
- 19. Conversione di char * in float o double
- 20. Conversione C/C++ da doppio a punto fisso con numero minimo di cifre diverse da zero
- 21. Perché Math.Floor (Double) restituisce un valore di tipo Double?
- 22. Java Double vs double: tipo classe vs tipo primitivo
- 23. Conversione da una matrice frastagliata a doppio puntatore in C#
- 24. Conversione da PHP a codice C++
- 25. Conversione da binario a char in C
- 26. Conversione da IL a codice C#
- 27. Conversione da vuoto * a oggetto in C#
- 28. Conversione di una funzione da C++ a C#
- 29. Conversione da stringa a char - C++
- 30. Conversione da & a & in Objective-C
Spero che sia vero per tutti i tipi? _ctype_ è uguale a _jtype_ –
@ program-o-steve: In generale, no. I tipi Java hanno larghezza pre-specificata, mentre i tipi C no. In altre parole, "int" di Java è sempre 32 bit, mentre "int" di C non lo è. – NPE