( hory | 2011. 06. 27., h – 21:55 )

Programozo szabaly #1: Az, hogy a te agyadban mi van, tokmindegy. A gep azt csinalja, amira utasitottad, nem azt, amire gondoltal.

Nagyjabol ugy van, ahogy leirtad, de javaslom, azert fusd at a C konyv vonatkozo reszeit ujra, hogy a szakzsargonnal tisztaban legyel.

Amiben hibadzol, az az, hogy fuggvenyhivas is van a kepben. A pointer, mint valtozo, ertek szerint adodik at (hogy mire mutat, az itt most mellekes - a pointer, mint valtozo maga ertek szerint adodik at. Ezert amikor a malloc() visszateresi erteket beleirod a valtozoba, az ott, a fuggvenyen belul megkapja az erteket, de amikor visszater a fuggveny, felszabadul a stack (mivel parameterek es helyi valtozok a stack-en kapnak helyet), es a hivasi helyen ujra a korabbi erteket kapja.

Ez most igy bonyi, de olvass utana, hogy muxik.