» »

Simple kazalci v c!

Simple kazalci v c!

prix ::

Pozdrav!

Rabim pomoč pri eni simple nalogi če bi mi nekdo približno povedal kako pridemo do rezultata, saj sem manjkal pri predavanjih zaradi obiska bolnišnice :(.

No tukaj je naloga:

Zapiši izpis programa:

int main()
{
int y[5]={0, 2, 4, 6, 8}, *px, *py;
px=&y[2];
*(px++)=6;
py=px+1;
*py=2;
printf ("%d %d %d %d", y[1], y[2], y[3], y[4]);
system("PAUSE");
return 0;
}

Rešitev:
2 6 6 2

predvsem me zanima kaj nardi px=&y[2]; ... a to kaže na mesto v vektorju ali na kaj?

Prosim za kratko obrazlozitev za katero bi bil zelo hvalezen!

LP
-------------------------------------------------
Errare humanum est, in errore perservare stultum.
-------------------------------------------------

arjan_t ::

int main()
{
int y[5]={0, 2, 4, 6, 8}, *px, *py;
px=&y[2]; //referenco 2. elementa iz y shrani v pointer px
*(px++)=6; //na pomnilniško lokacijo kamor kaže px, shrani vrednost 6, nato poveča px za 1, ki zdaj kaže na 3 element iz y
py=px+1; //v py shrani px+1, tako zdaj py kaže na 4 element iz polja y
*py=2; //na pomnilniško lokacijo kamor kaže py shranimo vrednost 2
printf ("%d %d %d %d", y[1], y[2], y[3], y[4]);
system("PAUSE");
return 0;
}

prix ::

ej hvala ti :) sem pa zdele ze gledal mal na netu pointer guide in sem našo.... tisto px++ nisem vedo da prestavi kazalec za eno mesto naprej....

Res legenda si, za tako lepo in uporabno razlago! =*
-------------------------------------------------
Errare humanum est, in errore perservare stultum.
-------------------------------------------------

BlueRunner ::

px = &y[2];

je isto kot

px = &(*(y + 2));

je isto kot

px = y + 2;


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

[C] struct in int[] (strani: 1 2 )

Oddelek: Programiranje
657375 (6448) MrBrdo
»

C osnova

Oddelek: Programiranje
221559 (1074) RunoTheDog
»

C

Oddelek: Programiranje
111015 (890) ;-)
»

programiranje C

Oddelek: Programiranje
62438 (2300) bozjak
»

[c] char zadeva

Oddelek: Programiranje
222258 (2056) TheCyborg

Več podobnih tem