JNI Referenz auf Variable in Java?

Status
Nicht offen für weitere Antworten.
T

Tom21

Gast
Hallo Leute,

Habe ein Problem mit der Realisierung von JNI.

Ich möchte einer C Funktion einfach einen Zeiger auf eine Variable x, die ich in Java angelegt habe übergeben.

Die C-Funktion soll dann einfach auf die Variable x direkt schreiben. Bei einem Array als Parameter funktioniert es gut.

Code:
JNIEXPORT jint JNICALL Java_jni_JNIinterface_test_read
(JNIEnv *env, jclass cls, jbyte address, jbyteArray recvBuffer, jshort recvLength){
   
    unsigned char*  cRecvBuffer;
    unsigned short* crecvLength = (unsigned short*)malloc(sizeof(uint16_t));
	
	jint errorcode = 1;
	jboolean isCopy;

	cRecvBuffer = (unsigned char*)env->GetByteArrayElements(recvBuffer, &isCopy);
	errorcode = (jint)test_read((uint8_t)address, cRecvBuffer, crecvLength);
	
	env->SetByteArrayRegion(recvBuffer, 0,(jsize) *crecvLength, (jbyte *)cRecvBuffer);
	free(crecvLength);

	
	return errorcode;

}

In Java lege Ich ein Array an und übergebe es der Funktion:

Code:
byte[] recvBuffer = new byte[16];
		short recvLength= 0;
		System.out.println(JNIinterface.test_read((byte)0x03, recvBuffer, recvLength));

Nach dem Aufruf, ist der recvBuffer dann gefüllt.

Doch wie schaffe ich es, dass ich eine Variable
Code:
short recvLength
in Java definiere, Der C-Funktion eine Referenz zu recvLength übergebe und die C-Funktion dann dass Ergebnis in die Variable recvLength schreibt. wie bei dem recvBuffer[].

Ich hoffe ich konnte mein Problem rüberbringen
 
T

Tom21

Gast
Hallo,

danke für die Antwort,

geht das echt nicht?? Ich brauche halt das recvLength oben in Java. Einelementiges Array?? Wäre ne möglichkeit, aber scheit mir nicht wirklich sauber zu sein.

Wie machen das andere?? Bin doch nicht der einzige mit dieser Forderung.
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
G Referenz auf Variable! Allgemeine Java-Themen 3
LimDul Hä? Lambda-Ausdruck geht, Methoden-Referenz nicht Allgemeine Java-Themen 8
MiMa Referenz auf Objekte und deren Inhalte Allgemeine Java-Themen 12
kodela Übergabe einer Referenz Allgemeine Java-Themen 20
J Verständnis Frage zur Instanz, Objekte, Instanzierung, Referenz Allgemeine Java-Themen 14
M Compiler-Fehler Methoden-Referenz Allgemeine Java-Themen 5
S OOP this-Referenz als Konstruktor-Übergabe Allgemeine Java-Themen 8
M neues Objekt speichern, nicht Referenz Allgemeine Java-Themen 10
Y POI auf eine Referenz (Datei/Internetseite) anwenden Allgemeine Java-Themen 9
B Speicherverbrauch Objekt-Referenz Allgemeine Java-Themen 11
D Referenz einer Funktion aus einer anonymen Klasse? Allgemeine Java-Themen 3
P Threads ohne Referenz & der Garbage Collector Allgemeine Java-Themen 2
K Als Rückgabewert ode call by referenz was ist sauberer? Allgemeine Java-Themen 12
A Observer Pattern: feuern bei neuer Referenz-Zuweisung? Allgemeine Java-Themen 8
woezelmann referenz der outer class aus static nested class heraus Allgemeine Java-Themen 7
T Interface-Referenz Allgemeine Java-Themen 2
K ArrayList Referenz Allgemeine Java-Themen 8
MQue this- Referenz Allgemeine Java-Themen 4
G referenz von variablen Allgemeine Java-Themen 9
T Referenz und GC? Allgemeine Java-Themen 16
MQue Datei- referenz schließen Allgemeine Java-Themen 5
S Referenz auf Funktion? Allgemeine Java-Themen 16
P call by value/referenz Allgemeine Java-Themen 4
S Stream ohne Referenz kopieren ? Allgemeine Java-Themen 4
G Referenz und Garbagecollector Allgemeine Java-Themen 4
D Map: Referenz oder Int-ID als key speichern? Allgemeine Java-Themen 11
M Stil-Frage: this-Referenz Allgemeine Java-Themen 38
B wird Vektor als Referenz übergeben? Allgemeine Java-Themen 5
G 2 Objekte der selben Klasse zusammenfügen und alte Referenz Allgemeine Java-Themen 19
V Übergabe per Referenz. Allgemeine Java-Themen 5
G Eine C/C++ Referenz in einem Java Object speichern Allgemeine Java-Themen 5
F array als referenz/werteparameter übergeben? Allgemeine Java-Themen 2
M Referenz wird nicht überschrieben? Allgemeine Java-Themen 2
C GC: Referenz entfernen Allgemeine Java-Themen 6
K Referenz löschen Allgemeine Java-Themen 3
T Exception im Constructor -> null-Referenz zurückgeben Allgemeine Java-Themen 6
W Variable Initialisierung mit dem Ergebnis einer Regex Allgemeine Java-Themen 1
A Clean Code: Variable vs. Methode Allgemeine Java-Themen 8
J Wo kommt der Wert der Variable her ? Allgemeine Java-Themen 6
E Variablen Nach Übergabe einer Variable den Constructor aufrufen Allgemeine Java-Themen 16
H lokale Variable bei Optional verwenden Allgemeine Java-Themen 11
A Variable in if initialisieren Allgemeine Java-Themen 23
S Variable als Objekt Name Allgemeine Java-Themen 3
D "Automatisierte", variable verschachtele for-Schleife Allgemeine Java-Themen 9
T statische Variable und nicht-statische Methode Allgemeine Java-Themen 2
P Variable wird in for - loop nicht richtig hochgezählt Allgemeine Java-Themen 11
A Variablen non-static variable cannot be referenced from a static content Allgemeine Java-Themen 4
A Variable, welche Exeption wirft als "Global" deklarieren Allgemeine Java-Themen 13
A Scanner Variable Klassenimtern deklarieren Allgemeine Java-Themen 12
L Variablen Variable nicht aktualisiert Allgemeine Java-Themen 3
denny86 NetBeans Ordnernamen rekursiv auslesen und in Variable verarbeiten Allgemeine Java-Themen 38
R Variable durch mehrere Methoden ändern und nutzen Allgemeine Java-Themen 17
P Static Variable -> unterschiedliche Werte? Allgemeine Java-Themen 1
C Abstrakte Klasse, lokale Variable-Problem Allgemeine Java-Themen 1
T AWT AWT-EventQueue-0 Null_Pointer_Exception durch Variable Allgemeine Java-Themen 12
M Variable ändern bei jedem Schleifendurchlauf Allgemeine Java-Themen 32
F Wert in Variable schreiben, wenn diese gerade genutzt wird Allgemeine Java-Themen 10
P Prüfen ob es Variable mit Namen gibt der als String übergeben wird Allgemeine Java-Themen 7
S JFrame Variable mitgeben Allgemeine Java-Themen 5
M Variable außerhalb Klasse definierbar? Allgemeine Java-Themen 2
X Bild -> lokale Variable -> DB -> lokale Variable Allgemeine Java-Themen 3
F Aktuelle Variable Allgemeine Java-Themen 2
J String Variable verändert sich plötzlich Allgemeine Java-Themen 8
J private static final String variable Allgemeine Java-Themen 8
A Long variable wird negativ??? Allgemeine Java-Themen 1
reibi Classpath Classpath Variable beim Tomcat Allgemeine Java-Themen 2
M Zeiger auf statische Variable Allgemeine Java-Themen 1
H Klassennamen zum Aufruf eines statischen Feldes aus Variable holen Allgemeine Java-Themen 4
F Variable übergeben?! Allgemeine Java-Themen 2
L Variable auch in der function verfügbar machen? Allgemeine Java-Themen 4
M Collections Typ Variable einer generischen Collection ? Allgemeine Java-Themen 4
P Variablen Variable von void im ActionListener verwenden Allgemeine Java-Themen 3
M Parallele Programmierung: volatile Variable nimmt ungewöhnlichen Wert an Allgemeine Java-Themen 3
iB0T Variable Wert ausrauchen Allgemeine Java-Themen 3
T Variablen Variable wird als nicht genutzt angezeigt Allgemeine Java-Themen 8
S Datentypen Eine Variable von String zu Int ändern Allgemeine Java-Themen 5
Hoppelmann "Variable" in String erkennen Allgemeine Java-Themen 2
B Variable class in java.lang.Object Allgemeine Java-Themen 11
O Variablen Originalname einer übergebenen Variable prüfen Allgemeine Java-Themen 9
X Windows-Environment-Variable per jRegistryKey anpassen Allgemeine Java-Themen 6
P Variable in Array stellen Allgemeine Java-Themen 11
M Arraynamen durch Variable festlegen lassen Allgemeine Java-Themen 5
J Anderem Thread Variable mitgeben Allgemeine Java-Themen 2
nrg Auszulagernder Part, der aber variable Methode/Klasse aufruft Allgemeine Java-Themen 7
I %AppData% Variable für einen Prozess setzen Allgemeine Java-Themen 23
G Variablen Variable extern speichern - wie? Allgemeine Java-Themen 9
M Variablen Wie Variable verfügbar machen? Allgemeine Java-Themen 16
A variable aus einer anderen klasse verändern Allgemeine Java-Themen 5
G Variable Methodenwahl Allgemeine Java-Themen 11
C JFormattedTextField Inhalt einer Variable zuweisen Allgemeine Java-Themen 11
C Variablen Variable einer Klasse in einer anderen Klasse Nutzen Allgemeine Java-Themen 8
B Umgebungsvariable Variable wird nicht übernommen Allgemeine Java-Themen 4
N variable Anzahl von Objektinstanzen zur Laufzeit erstellen Allgemeine Java-Themen 4
C Environment Variable in Pfad -> Datei öffnen Allgemeine Java-Themen 5
Q Variable aus Schleife/Switch benutzen Allgemeine Java-Themen 7
algorismi int-variable Value Change event Allgemeine Java-Themen 3
E Variable dynamisch ausgeben Allgemeine Java-Themen 5
trash super() mit Variable bestücken Allgemeine Java-Themen 3
X Cannot refer to a non-final variable settings inside an inner class defined in a different method Allgemeine Java-Themen 4
A Variable Parameterinhalte an einen Query übergeben? Allgemeine Java-Themen 3

Ähnliche Java Themen

Neue Themen


Oben