casten von array in multi-dim array
-
Hallo Leute,
angenommen ich ich habe ein Array
int a[] = { 1 , 2 , 3 , 4 }
und möchte dieses in ein 2*2 Array casten:
int b[2][2] = { {1 , 2 } , {3 , 4} }
gibt es dafür eine Möglichkeit in C?
So etwas wie
int a[] = { 1 , 2 , 3 , 4 }; int b[2][2] = a;
funktioniert leider nicht.
Danke
-
int a[] = { 1 , 2 , 3 , 4 }; int (*b)[2] = (int(*)[2])a;
Das Casten von Zeigern ist hochdiffizil, d.h. nur was für Profis.
Ich rate davon ab, sowas prinzipiell einzusetzen.
-
Vielen Dank.
Kannst du noch kurz erklären, was
(int(*)[2])
für ein Konstrukt ist?
Erinnert mich etwas an einen Funktion-Pointer, ist aber keiner oder?Grüße
-
Das ist ein Zeiger auf ein Array von zwei ints.
www.cdecl.org