C

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

Terma të lidhur