typkonvertierung
-
Servus!
Ich bekomme von einer Funktion einen void-Pointer geliefert.
Der zeigt in Wirklichkeit auf ein double-Array mit 4 Elementen.Kann ich irgendwie beim Funktionsaufruf so ne Typkonvertiereung machen, dass ich auch einfach mit ner Zuweisung die Werte in ein eigenes Array übernehme?
Ich meine das so:
eigenesArray = (typkonvertierung)Funktion();
Danke für Hilfe!
-
eigenesArray = (double *)Funktion();
-
Genauso wie du es gmacht hats gehts. Ist aber keine größen kntrolle dabei! Das geht in c++ mit referenzen aber wir sind aber im ansi C thread
Bsp.:double *dp; dp = (double*)fkt(); printf ("%g",dp[0]);
mfg
-
Danke
Aber das geht bei mir nicht.
Ich habe ein zweidimensionales Array.
Wenn ich da die gezeigt Zuweisung mache, bringt der Compiler dass er double* nicht in double[20][4] konvertieren kann.Nochmal Danke.
-
Bei zei Dimensionen musst du zwei * machen:
meinArray = (double **)Funktion();
-
Wie hast du dein eigenesArray überhaupt definiert??
-
doulbe meinArray[20][4];
Mit (double ) bringt er wieder dass er double nicht in double[20][4] konvertieren kann.
Danke!