float to void*
-
ipsec schrieb:
Theoretisch macht man das so:
int **array = new int*[2]; array[0] = new int[5]; array[1] = new int[7]; mysterioese_funktion(array);Wenn, dann aber ohne Initialisierung vor dem Aufruf, es handelt sich ja um einen reinen Output-Parameter.
Andererseits kann man dann wegen der Kopie des
int**nur einenint*innerhalb der Funktion verändern, was einemint*&-Parameter gleichkommen würde. Aber es geht doch um Arrays. Einint[size]-Array kanns wegen der zweifachen Indirektion jedoch nicht sein, zumindest nicht ohne Würgen.Fragen über Fragen...

-
Nexus schrieb:
Wenn, dann aber ohne Initialisierung vor dem Aufruf, es handelt sich ja um einen reinen Output-Parameter.
Naja ich dachte an sowas:
void mysterioese_funktion(int **out) { out[0][3] = 42; out[1][5] = 10^10^10^32; }Aber natürlich kann ich mich auch irren.
-
Nein, das macht Sinn. Ich dachte eben, das Array selbst würde von der Funktion erzeugt, dabei sind es nur die Elemente.

-
Die Funktion gibt mir die Anzahl der vorhandenen Module in einem Gerät und zu jedem Modul die Anzahl der Kanäle.
Es gibt keine festen Vorgaben an die Struktur, wie ich das abspeichern muss. Hauptsache, ich speicher es irgendwie. D.h. ich kann mich mit dem Aufbau des Arrays nach Belieben der Funktion anpassen.