Pointer to array vs array of pointers
Në shqip: Pointer drejt vargut dhe varg pointer-ësh
ShpjegimiSQ
int *p[3] është një varg me 3 pointer-ë; int (*p)[3] është një pointer drejt një vargu me 3 int-e. Kllapat ndryshojnë gjithçka — lexoje nga emri jashtë.
EnglishEN
int *p[3] is an array of 3 pointers; int (*p)[3] is a pointer to an array of 3 ints. The brackets change everything — read it from the name outwards.
Si ta mendosh
Si dallimi mes „tri letra me adresa“ dhe „adresa e një kutie me tri letra“.
Lexoje në anglisht
Like the difference between “three letters with addresses” and “the address of a box holding three letters”.
Shembull kodic
int a = 1, b = 2, c = 3;
int *tre[3] = {&a, &b, &c}; // varg pointer-ësh
int m[2][3];
int (*rreshti)[3] = m; // pointer drejt vargut